我如何在 Qmetry 自动化框架 (QAF) 中放置检查点
How can i place checkpoints in Qmetry automation Framework(QAF)
我最近开始使用 QAF Java 框架进行测试。我真的很喜欢那里的仪表板,它既详细又吸引人。但是,由于 Qmetry 网站上的知识和文档有限,我无法使用大部分框架。
如何设置检查点如下图所示?请用基本的例子解释。
Qmetry 文档的屏幕截图
我试过搜索这个,但我没有搞清楚。
测试用例中的断言和验证是检查点。每个检查点都将在报告中找到。如果是 UI 测试,它会自动在每个检查点消息中附加屏幕截图。您可以参考 Assertion/Verification.
的文档
编辑:
步骤也被视为检查点。当有step call时,里面的所有checkpoints(step/assertion/verification)都会变成sub checkpoint。步骤是任何用 @QAFTestStep
注释的 java 方法,例如:
@QAFTestStep(description = "search for {term}")
public static void searchFor(String searchTerm) {
$("name=q").sendKeys("test");
$("searchpage.searchbtn.loc").click();
}
当调用步骤时,它将被报告为检查点。步骤可以在测试用例或功能文件中调用。
以下是功能文件中的示例测试用例:
Scenario: SampleTest
Given get '/'
When search for 'qaf github infostretch'
Then verify link with partial text 'qaf' is present
下面是 java
中的示例测试用例
@Test
public void testGoogleSearch() {
get("/");
searchFor("qaf github infostretch");
$("partialLink=qaf").verifyPresent();
}
无论 java 或 bdd 中的测试用例,报告都是相同的。
在 java 中编写的测试中创建动态步骤的另一种方法是使用运行时,即使用运行时场景工厂。
public void testWithGivenWhenThen() {
scenario().
given("a precondition",()->{
//write appropriate code...
}).
when("some action performed",()->{
//write appropriate code...
}).
then("it should have expected outcome",()->{
//write appropriate code...
}).
execute();
}
您也可以使用Reporter class添加检查点。参考下面的代码片段。
import com.qmetry.qaf.automation.util.Reporter;
//Checkpoint with message
Reporter.log("you message");
//Checkpoint with message and screenshot
Reporter.logWithScreenShot("you message");
//Checkpoint with message types
Reporter.logWithScreenShot("you message", MessageTypes.Info);
Reporter class 必须从 com.qmetry.qaf.automation.util 导入 包。
我最近开始使用 QAF Java 框架进行测试。我真的很喜欢那里的仪表板,它既详细又吸引人。但是,由于 Qmetry 网站上的知识和文档有限,我无法使用大部分框架。
如何设置检查点如下图所示?请用基本的例子解释。
Qmetry 文档的屏幕截图
我试过搜索这个,但我没有搞清楚。
测试用例中的断言和验证是检查点。每个检查点都将在报告中找到。如果是 UI 测试,它会自动在每个检查点消息中附加屏幕截图。您可以参考 Assertion/Verification.
的文档编辑:
步骤也被视为检查点。当有step call时,里面的所有checkpoints(step/assertion/verification)都会变成sub checkpoint。步骤是任何用 @QAFTestStep
注释的 java 方法,例如:
@QAFTestStep(description = "search for {term}")
public static void searchFor(String searchTerm) {
$("name=q").sendKeys("test");
$("searchpage.searchbtn.loc").click();
}
当调用步骤时,它将被报告为检查点。步骤可以在测试用例或功能文件中调用。 以下是功能文件中的示例测试用例:
Scenario: SampleTest
Given get '/'
When search for 'qaf github infostretch'
Then verify link with partial text 'qaf' is present
下面是 java
中的示例测试用例@Test
public void testGoogleSearch() {
get("/");
searchFor("qaf github infostretch");
$("partialLink=qaf").verifyPresent();
}
无论 java 或 bdd 中的测试用例,报告都是相同的。
在 java 中编写的测试中创建动态步骤的另一种方法是使用运行时,即使用运行时场景工厂。
public void testWithGivenWhenThen() {
scenario().
given("a precondition",()->{
//write appropriate code...
}).
when("some action performed",()->{
//write appropriate code...
}).
then("it should have expected outcome",()->{
//write appropriate code...
}).
execute();
}
您也可以使用Reporter class添加检查点。参考下面的代码片段。
import com.qmetry.qaf.automation.util.Reporter;
//Checkpoint with message
Reporter.log("you message");
//Checkpoint with message and screenshot
Reporter.logWithScreenShot("you message");
//Checkpoint with message types
Reporter.logWithScreenShot("you message", MessageTypes.Info);
Reporter class 必须从 com.qmetry.qaf.automation.util 导入 包。