RFT从Html.SELECT获取.text值并与reg exp进行比较

时间:2015-04-01 00:06:42

标签: rft

我需要从我的应用程序中识别Html.SELECT对象并选择它。 我成功地做到了这一点,但现在我不能在我的代码中编写整个.text字符串作为所有位置的长列表。 如何提取该值并将其与正则表达式进行比较。 例如 - .text是区........................................... .....

我希望有一个字符串变量作为区。* 在下面的代码中,我需要字符串名称作为正则表达式

SelectMCASDistrict("District.*");

public static void SelectMCASDistrict(String name)
{
   GuiTestObject textObj = findTextObjectDist(name);
   if (textObj != null) {

    ((SelectGuiSubitemTestObject) textObj).select("Abington.*");
     } else {
       throw new ObjectNotFoundException();
   }
} 


private static GuiTestObject findTextObjectDist(String name)
{

    TestObject[] tobs = find(atDescendant(".class", "Html.SELECT", ".text", name ), true);

    if(tobs.length == 0)
        return null;
    return (GuiTestObject)tobs[0];
 }

1 个答案:

答案 0 :(得分:0)

你问的是可能的。您可以使用find类,而不是按String格式提供Property方法搜索条件,如here所述。

这样,您的代码就会变成:

private static GuiTestObject findTextObjectDist(String name) {
    // Build searching filters
    Property[] props = new Property[2];
    props[0] = new Property(".class", "Html.SELECT");
    props[1] = new Property(".text", 
        new RegularExpression("District.*", false));

    // Search for objects
    TestObject[] tobs = find(atDescendant(props), true);
    // Return them
    if(tobs.length == 0)
        return null;
    return (GuiTestObject)tobs[0];
}