2017-07-03 123 views
1

我試圖建立機器人在我創建了一個Eclipse Maven的硒TestNG的Java項目的頂部,但它似乎並沒有被撿默認關鍵字(我沒有甚至嘗試添加我自己的)。機器人框架不拾取關鍵字實現

我開始通過創建一個Maven項目並添加到pom.xml中硒3.4的依賴關係,TestNG的6.8和3.0.2的機器人,然後還增加了機器人插件1.4.7。最後,更新項目,讓Maven下載所有需要的東西。

爲了測試硒(沒有機器人),我在src> test> java中創建了一個textNG類,在系統中添加了一個指向chromedriver.exe文件的系統屬性,並添加了一個簡單的測試,只是打開瀏覽器並導航到谷歌。它的工作,所以現在我想在其上使用機器人。

這是我的pom.xml文件:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.demo.automation</groupId> 
    <artifactId>automated_tests</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <dependencies> 
    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>3.4.0</version> 
    </dependency> 
    <dependency> 
     <groupId>org.testng</groupId> 
     <artifactId>testng</artifactId> 
     <version>6.8</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.robotframework</groupId> 
     <artifactId>robotframework</artifactId> 
     <version>3.0.2</version> 
    </dependency> 
    </dependencies> 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.robotframework</groupId> 
     <artifactId>robotframework-maven-plugin</artifactId> 
     <version>1.4.7</version> 
     <executions> 
      <execution> 
      <goals> 
       <goal>run</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    </build> 
</project> 

我創建的src /測試/ robotframework /驗收文件,其內容如下:

*** Settings *** 
Test Set Up Start Selenium Server 
Test Tear Down Stop Selenium Server 

*** Test Cases *** 
Visit google 
    Open Browser https://www.google.com chrome 
    Close Browser 

然而,當我作爲運行maven安裝,我得到:

安裝失敗:找不到名稱爲「啓動Selenium服務器」的關鍵字。

而且拆毀失敗:無關鍵詞名爲「停止Selenium服務器」 找到。

那麼,爲什麼它是機器人沒有找到關鍵字執行?我如何添加自己的關鍵字的實現?

回答

1

機器人的原因是沒有找到的關鍵詞是,你是不是導入包含關鍵字庫。 Start Selenium Server是已棄用的SeleniumLibrary的一部分。爲了使用的關鍵字,你必須與Library設置導入:

*** Settings *** 
Library SeleniumLibrary 
Test Set Up Start Selenium Server 
Test Tear Down Stop Selenium Server 

假設在安裝SeleniumLibrary的文件夾在你的PYTHONPATH,機器人將導入庫,使關鍵字提供給您。

0

我居然發現了我失蹤了一個maven依賴性:

<dependency> 
    <groupId>com.github.markusbernhardt</groupId> 
    <artifactId>robotframework-selenium2library-java</artifactId> 
    <version>1.4.0.8</version> 
</dependency> 

而且,我並不需要使用啓動Selenium服務器和停止Selenium服務器,因爲他們棄用。 在那之後,我能夠通過創建一個自定義關鍵字設置(我使用chromedriver)瀏覽器路徑來運行我的測試:

我創建內src/main/java/demo一個.java文件,並補充說,設置屬性的方法:

package demo; 

public class Setup { 
    public void driverPath() { 
     System.setProperty("webdriver.chrome.driver", "C:\\path\\to\\chromedriver.exe"); 
    } 
} 

然後,我創建的src /測試/ robotframework /承兌/ Resource.robot文件並導入我的媒體庫:

*** Settings *** 
Library Selenium2Library 
Library demo.Setup 

也造就一個src /測試/ robotframework /承兌/ __ init__。機器人文件並用於我創建關鍵字(瀏覽器設置):

*** Settings *** 
Test Setup Driver Path 
Test Teardown Close All Browsers 
Test Timeout 2 minute 30 seconds 

在我的測試,我調用Resource.robot:

*** Settings *** 
Resource Resource.robot 

*** Test Cases *** 
Visit google 
    Open Browser https://www.google.com chrome 
相關問題