2022 Java+Maven+Katalon Recorder+Selenium 自动化测试开发:入门教程

2022 Java+Maven+Katalon Recorder+Selenium 自动化测试开发:入门教程

一、引言

最近被分配了自动化测试的任务,在此记录一下从零开始的Java+Maven+Katalon Recorder+Selenium 自动化测试。

整个流程大概为:Katalon Recorder记录操作流程并导出测试Selenium代码;在Maven项目中,添加或修改Katalon Recorder无法实现的操作。

文章会分享一些本人在测试过程中遇到的问题及解决办法
使用Python跟Java的测试流程一致,这里不再赘述Python配置和所需要的第三方库

二、目录

三、环境、工具及项目配置

开发环境 (配置过程略)
  1. Java 1.8
  2. Maven 3.6.1
    附setting.xml
<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
	
  <localRepository>D:\\MavenRepo</localRepository>

  <pluginGroups>
  </pluginGroups>

  <proxies>
  </proxies>

  <servers>
  </servers>
      <mirror>      
        <id>nexus-aliyun</id>    
        <name>nexus-aliyun</name>  
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>    
        <mirrorOf>central</mirrorOf>      
      </mirror>
  </mirrors>
  </profiles>
</settings>
开发工具 (安装步骤略)
  1. IDEA 2020.1.3
  2. Katalon Recorder 5.7.3
  3. Edge 98.0.1108.56:驱动地址
  4. Chrome 98.0.4758.102:驱动地址1驱动地址2
项目配置
  1. pom配置文件
    附pom.xml代码
<?xml version="1.0" encoding="UTF-8"?>
<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>
    <packaging>jar</packaging>
    <groupId>com.zlc</groupId>
    <artifactId>WebTest</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <name>WebTest</name>
    <description>Web Test for Maven</description>

    <properties>
        <java.version>8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.2</version>
            <scope>compile</scope>
        </dependency>
        <!-- 加载selenium包 -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.1.2</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>8</source>
                    <target>8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

四、Katalon Recorder教程

  1. 图中位置①单击“+”创建Test Suite

  2. 图中位置②单击“+”创建Test Case

  3. 单击Record按钮,开始录制
    在这里插入图片描述

  4. 在网页上手动操作,这些操作会被Katalon Recorder自动录制
    基本只能自动生成点击、跳转操作,不过也够了,用它的目的就是自动编写简单操作的测试代码,复杂操作还是得手动写测试代码。

  5. 停止录制

  6. 导出Java测试代码
    在这里插入图片描述

  7. 选择要导出的代码类型
    Java选择“Java(WebDriver + JUnit)”;
    Python选择“Python2”,可在Python3环境下使用,不兼容问题很少,问题不大。

  8. 选择Test Suite和Test Case

  9. 查看代码,可以直接复制
    在这里插入图片描述

  10. export导出(直接复制,也不需要导出)

五、Selenium开发中遇到的问题

1. 报“no window”错误

①检查元素是否在子frame中,WebDriver跳转到对应的frame中

WebDriver qrcont = driver.switchTo().frame("frameId");

②基本都是因为页面未加载完成,页面跳转后让线程等待几秒钟

Thread.sleep(5000);

try {
    Thread.sleep(5000);
} catch (InterruptedException e) {
    e.printStackTrace();
}

页面发生跳转,需等待几秒后,切换页柄,最好刷新一下页面,再等待几秒页面加载

Thread.sleep(1000);
String winHandleBefore = driver.getWindowHandle();
for(String winHandle : driver.getWindowHandles()) {
     if (winHandle.equals(winHandleBefore)) {
         continue;
     }
     driver = driver.switchTo().window(winHandle);
     System.out.println(driver.getCurrentUrl());
     break;
}
driver.navigate().refresh();
Thread.sleep(1000);

2. 报“no such element”错误

①检查xpath是否正确Katalon Recorder生成的xpath不一定正确:在浏览器的开发者工具中检查一下
②可能是元素未加载,设置等待几秒钟
元素未显示(例如元素在滑动窗口中未显示出来,使用JS脚本找到容器并滑动到对应位置,10000是个较大值)

js.executeScript("document.getElementsByClassName('filter-content')[0].scrollTop=10000;");

六、结语

测试开发中经常会遇见:浏览器开发工具中能找到元素,但是运行过程中获取不到的问题;需一步一步debug,仔细分析可能存在的原因。
如有纰漏与遗漏,欢迎大家指正。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Katalon Recorder是一款基于浏览器的自动化测试工具,可以帮助测试人员录制和回放Web应用程序的测试用例。以下是Katalon Recorder的使用方法: 1. 安装Katalon Recorder插件:在Chrome或Firefox浏览器中进入插件商店,搜索并安装Katalon Recorder插件。 2. 启动Katalon Recorder:在Chrome或Firefox浏览器中启动插件,并选择“Record Web”选项卡。 3. 录制测试用例:使用浏览器访问需要测试的Web应用程序,并进行操作。Katalon Recorder会自动记录您的操作步骤,并生成对应的测试脚本代码。 4. 回放测试用例:在Katalon Recorder的“Test Case”选项卡中,选择要回放的测试用例,并点击“Play Test Case”按钮。Katalon Recorder会自动打开浏览器并执行测试用例。 5. 执行测试套件:在Katalon Recorder的“Test Suite”选项卡中,可以创建和管理多个测试用例,组成一个测试套件。选择要执行的测试套件,并点击“Run Test Suite”按钮。 6. 导出测试脚本:在Katalon Recorder的“Export”选项卡中,可以将录制的测试用例和测试套件导出为Selenium WebDriver或Katalon Studio的测试脚本。 7. 其他功能:Katalon Recorder还提供了丰富的功能和设置,例如变量管理、断言、循环、条件语句等,可以帮助您创建更加灵活和高效的测试用例。 总之,Katalon Recorder是一款简单易用、功能强大的自动化测试工具,适用于初学者和专业测试人员。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值