Heloo All,
我正在使用Robotium开发的产品自动化。能够应付许多模块。唯一的问题是我需要对验证进行硬编码,如:
如果userName为“xyz”,则密码必须为“12345”。在硬编码上,值为 -
solo.enterText(0, “XYZ”); solo.enterText(1, “12345”);
这很好用。但我只是想知道是否有任何方法可以查询正在使用的数据库,从那里获取值并使solo类验证测试。
对此问题的任何解决方案和示例都将非常感激。
答案 0 :(得分:1)
按照以下步骤实现此目的,
步骤:1。从数据库中读取值并将其存储在XML中。
Class.forName(sun.jdbc.odbc.JdbcOdbcDriver).newInstance();
Connection con = DriverManager.getConnection(jdbc:odbc:myData, “”, “”);
Statement stmt = con.createStatement();
String query = “Select UserName, Password from Customers”;
ResultSet rs = stmt.executeQuery(query);
StringBuffer xml = “<?xml version=‘1.0’?><myDatabase><customers>”;
while (rs.next()) {
xml.append(“<custRec><custUserName>”);
xml.append(rs.getString(“UserName”));
xml.append(“</custName><cusPassword>”);
xml.append(rs.getInt(“Password”));
xml.append(“</custPassword></custRec>”);
}
xml.append(“</customers></myDatabase>”);
步骤:2。从XML文件中读取值并在Solo
类中使用它。
。
StringReader stringReader = new StringReader(xmlString);
InputSource inputSource = new InputSource(stringReader);
DOMParser domParser = new DOMParser();
domParser.parse(inputSource);
Document document = domParser.getDocument();
NodeList userNameList = doc.getElementsByTagName(“custUserName”);
NodeList passwordList = doc.getElementsByTagName(“custPassword”);