傾城報告
這個例子涵蓋了使用 TestNG,Java 和 Maven 在 Selenium 中實現 Allure Reports。
Maven 配置
知識庫
新增以下程式碼以配置 jcenter 儲存庫
<repository>
<id>jcenter</id>
<name>bintray</name>
<url>http://jcenter.bintray.com</url>
</repository>
依賴
將以下依賴項新增到 pom.xml
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-testng-adaptor</artifactId>
<version>1.5.4</version>
</dependency>
Surefire 外掛配置
<plugin>
<groupId> org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<argLine>-javaagent:${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar
</argLine>
<properties>
<property>
<name>listener</name>
<value>ru.yandex.qatools.allure.testng.AllureTestListener</value>
</property>
</properties>
<suiteXmlFiles>testng.xml</suiteXmlFiles>
<testFailureIgnore>false</testFailureIgnore>
</configuration>
</plugin>
傾城報告的樣本測試
建立名為 test.java 的樣本測試
public class test{
WebDriver driver;
WebDriverWait wait;
@BeforeMethod
public void setup() {
System.setProperty("webdriver.chrome.driver", "path to/chromedriver.exe");
driver = new ChromeDriver();
driver.get("https://www.google.com/");
wait = new WebDriverWait(driver,50);
}
@Title("Title check")
@Description("Checking the title of the loaded page.")
@Test
public void searchTest(){
String title = driver.getTitle();
LogUtil.log("Title Fetched: "+title);
assertEquals(title,"Google");
LogUtil.log("Test Passed. Expected: Google | Actual: "+title);
System.out.println("Page Loaded");
}
@AfterMethod
public void teardown(){
driver.close();
}
}
在上面的類中我們使用了 LogUtiil 類。這只是為了記錄測試中的步驟。下面是相同的程式碼
LogUtil.java
public final class LogUtil {
private LogUtil() {
}
@Step("{0}")
public static void log(final String message){
//intentionally empty
}
}
這裡
@Title(“”) 將在 Allure Report 中為你的測試新增標題
@Description(“”) 會將描述新增到你的測試中
@Step(“”) 將在測試的傾城度報告中新增一個步驟
執行時,將在“target / allure-results /”資料夾中生成 xml 檔案
與詹金斯的最終報告
如果你在安裝了 Allure Report 外掛的 Jenkins 中執行,那麼 Jenkins 將自動在你的作業中呈現報告。
沒有詹金斯的最終報告
對於那些沒有 Jenkins 的人,請使用以下命令列建立 html 報告。Allure CLI 是一個 Java 應用程式,因此可用於所有平臺。在使用 Allure CLI 之前,你必須手動安裝 Java 1.7+。
Debian 的
對於基於 Debian 的儲存庫,我們提供 PPA,因此安裝非常簡單:為 debian 安裝 Allure CLI
$ sudo apt-add-repository ppa:yandex-qatools/allure-framework
$ sudo apt-get update
$ sudo apt-get install allure-commandline
支援的發行版有:Trusty 和 Precise。安裝完成後,你將獲得誘惑命令。
蘋果系統
你可以通過 Homebrew 安裝 Allure CLI。
$ brew tap qatools/formulas
$ brew install allure-commandline
安裝完成後,你將獲得誘惑命令。
Windows 和其他 Unix
- 從 https://github.com/allure-framework/allure-core/releases/latest 下載最新版本的 zip 存檔。
- 將存檔解壓縮到 allure-commandline 目錄。導航到 bin 目錄。
- 使用適用於 Windows 的 allure.bat 和適用於其他 Unix 平臺的誘惑。
現在,在命令列/終端中輸入以下語法,將生成報告到 allure-report 資料夾中
$ allure generate directory-with-results/