当前位置: 首页 > 知识库问答 >
问题:

Maven不做我的Appium(硒)测试

韶弘壮
2023-03-14

我的JDK是1.8版本,Surefire是2.22.2,Maven是3.6.3。我正在使用jUnit和Spring注释。
当我尝试使用mavn test命令运行我的测试时,我没有出错,我获得了成功构建,也没有运行案例。

运行测试用例。TestLogin使用:org配置TestNG。阿帕奇。专家当然可以。测试NG。形态。TestNG652Configurator@7bb11784测试运行:0,失败:0,错误:0,跳过:0,所用时间:0.808秒

当我使用IntellIJUI运行程序运行类时,案例运行正确。我的类名以Test*开头。这是我的测试代码

package testCases;

import appium.AppiumController;
import org.junit.*;
import org.springframework.context.annotation.Description;
import screens.HomeScreen;
import screens.LoginScreen;

public class TestLogin extends AppiumController {
protected static LoginScreen loginScreen;
protected static HomeScreen homeScreen;

@BeforeClass
public static void setUp() throws Exception {
    startAppium();
    loginScreen = new LoginScreen(driver, wait);
    homeScreen = new HomeScreen(driver, wait);
}

@After
public void afterEach() {
    loginScreen.appReset();
}

@Test
@Description("Verify user can login with valid credentials")
public void validLoginTest() throws Exception {
    loginScreen.login("admin", "admin");
    Assert.assertTrue("Home screen is not visible\n", homeScreen.isHomeScreenVisible());
}

@Test
@Description("Verify user can not login with invalid credentials")
public void invalidLoginTest() throws Exception {
    loginScreen.login("admin1", "admin1");
    Assert.assertFalse("Home screen is visible\n", homeScreen.isHomeScreenVisible());
}

@AfterClass
public static void tearDown() throws Exception {
    stopAppium();
} 

问题是什么,如何使用命令行运行测试用例?

共有1个答案

柴华灿
2023-03-14

POM中可能同时存在TestNg和Junit依赖项。xml

根据TestNg的maven-surefire插件留档。您可能希望运行两个提供程序,例如surefire-jun it47和surefire-testng,并通过设置属性jUnit=false来避免在surefire-testng提供程序中运行JUnit测试。

文档参考-“运行TestNG和JUnit测试”部分

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>3.0.0-M5</version>
    <configuration>
      
      <properties>
        <property>
          <name>junit</name>
          <value>false</value>
        </property>
      </properties>
      <threadCount>1</threadCount>
     
    </configuration>
    <dependencies>
      <dependency>
        <groupId>org.apache.maven.surefire</groupId>
        <artifactId>surefire-junit47</artifactId>
        <version>3.0.0-M5</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.surefire</groupId>
        <artifactId>surefire-testng</artifactId>
        <version>3.0.0-M5</version>
      </dependency>
    </dependencies>
  </plugin>
 类似资料:
  • 我用selenium IDE记录了一些简单的硒测试。现在我想在詹金斯进行这些测试。我需要Jenkins的哪个插件?以及如何一步一步地运行测试?谢谢你的帮助。

  • 我目前正在运行mvn测试时收到此日志 我的pom.xml是这样的: 我的IssueTest.java如下所示: 我不知道为什么IssueTest.Java没有被正确读取,尽管我在maven surefire插件的构建配置中添加了它。 请告知。

  • 问题内容: 我在运行Ubuntu的本地计算机上设置Jenkins,将其指向我的jdk,然后进行maven,创建了一个作业来运行我的Selenium测试,并为它提供了项目中pom.xml的路径,但是当我尝试运行该作业时,它立即失败。控制台输出显示 在工作区中构建/ var / lib / jenkins / workspace / new job [new job] $ / usr / share

  • 我一直在周而复始地试图弄明白这一点,在Selenium网格集群上使用cucumber和maven并行选项几乎是不可能的。 我的跑步者根据标签跑步,应该会选择5到6个特征文件。 我使用Cucumber for Java、Maven surefire 2.19和Junit。 到目前为止,pom的surefire配置如下所示:- 我的跑步者看起来像这样:- 我和马文一起跑步:- 清洁测试-P RunFe

  • 朋友。我试图了解硒是如何工作的。我用JUnit 4写了一些测试。当我的应用程序正在运行时,这些测试工作正常,我将我的应用程序作为URL localhost:8077放在启动我的应用程序的位置。所有测试都根据需要通过。但现在我希望我的战争构建将取决于这些测试。在这些之后,我希望自动释放(Jenkins)也将取决于硒测试。我不明白一些事情: < Li > selenium测试应该包含在我的应用程序中,

  • 我想在元素中找到元素。我的意思是,例如,我找到这个元素,我想从这个元素开始搜索一些元素。我做这个: 但是,据我所知,搜索是从文档初学者开始的。