1

我正在查看一些指针/教程,甚至可能是另一个问题来帮助我完成任务。我正在寻找自动化网络管理任务。我想做的是:

  1. 登录到应用程序。
  2. 导航到特定菜单。
  3. 通过搜索栏搜索特定项目。
  4. 如果该项目显示在搜索项目中,则单击 UI 上的一组按钮并继续执行任务。
  5. 如果搜索结果中没有显示该项目,则继续搜索直到显示该项目,然后执行步骤 4。

我已经能够使用 Firefox 的 selenium IDE 插件执行第 3 步。但我不太确定如何进行以及在何处合并步骤 4 和 5 的逻辑。我是否使用编程语言?(如果是,那么如何?)

4

1 回答 1

2

您很快就达到了 IDE 的极限。IDE 不包含逻辑,但它适用于快速而肮脏的自动化任务,找出定位器 ID,并帮助人们学习 selenium 的基础知识。我建议查看学习如何在 Selenium Webdriver 中编写脚本。文档:http ://seleniumhq.org/docs/03_webdriver.html

因此,例如,如果您使用的是 Java(这是从文档中窃取的):

public class Selenium2Example  {
    public static void main(String[] args) {
        // Create a new instance of the Firefox driver
        WebDriver driver = new FirefoxDriver();

        // And now use this to visit Google
        driver.get("http://www.google.com");;

        // Find the text input element by its name
        WebElement element = driver.findElement(By.name("q"));

        // Enter something to search for
        element.sendKeys("Cheese!");

        //Pseudocode
        if(element.isDisplayed()){
           // Now submit the form. WebDriver will find the form for us from the element
           element.submit();
        }
        else{
        // Check the title of the page
           System.out.println("Page title is: " + driver.getTitle());
        }

        // Google's search is rendered dynamically with JavaScript.
        // Wait for the page to load, timeout after 10 seconds
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
            public Boolean apply(WebDriver d) {
                return d.getTitle().toLowerCase().startsWith("cheese!");
            }
        });

        // Should see: "cheese! - Google Search"
        System.out.println("Page title is: " + driver.getTitle());

        //Close the browser
        driver.quit();
    }
}
于 2012-08-20T21:59:38.613 回答