Testng自动化基本结构

本文介绍了一个基于Java的自动化测试框架,该框架集成了TestNG、HttpClient及MyBatis等技术,详细阐述了其分层设计思路,包括测试层、API层、数据层、业务层以及基础结构层,并提供了具体的目录结构示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自动化基于java语言,集合了testng、HttpClient、Mybatis,这个框架是在1年前搭建的,log、jar包、测试报告在log、lib、report文件夹下,在这里就不体现了

 

测试层:编写测试用例,@Test注解表示用例

Api:接口调用实现

Data:测试数据获取的地方

业务层:参考mvc模型分层结构service的用处

基础结构层:目前主要有http、util、dal 3个包

       http:分了HttpClientFactory、HttpClientService

       util:提供简单的工具类,例如commnUtil

   dal:是mybatis实现层

 

实际的项目中的目录如下:

 

 

自动化使用:

用例编写

       在testcase文件下编写用例,@Test表示一条用例

如下:

 

 

### TestNG 自动化测试框架学习教程 #### 了解TestNG的特点和优势 TestNG不仅继承了JUnit和NUnit的优点,还引入了许多新的特性使其更加灵活和强大。作为单元测试工具的同时也支持集成自动化测试,这使得其应用范围更为广泛[^1]。 #### 设计思路和技术选型 构建基于Java项目的自动化测试框架时,选择合适的工具至关重要。对于希望提升测试效率并保持高代码质量的团队来说,采用像TestNG这样的成熟解决方案是一个明智的选择。通过合理规划框架结构以及选用恰当的技术栈,可以有效促进持续集成/部署流程的发展[^2]。 #### 创建第一个简单的TestNG测试类 下面展示了一个基本的例子来说明如何编写一个简单的TestNG测试案例: ```java import org.testng.Assert; import org.testng.annotations.Test; public class SimpleTest { @Test public void testAddition() { int result = 5 + 7; Assert.assertEquals(result, 12); } } ``` 这段代码定义了一个名为`SimpleTest`的类,在其中包含了单个方法用于验证加法运算的结果是否正确。这里使用了@Test注解标记该函数为测试用例,并调用了Assert类中的assertEquals静态方法来进行断言操作。 #### 实现页面对象模型(POM) 为了使测试更具可维护性和扩展性,推荐按照Page Object Model (POM)模式组织UI交互逻辑。此设计方式有助于分离业务逻辑与界面元素定位策略,从而简化后续修改工作量。具体做法是在单独文件里封装特定网页上的所有组件及其行为,然后让具体的测试场景去实例化相应的页面对象并与之互动[^5]。 #### 配置运行参数及报告生成 除了编写实际的测试脚本外,还需要考虑怎样配置执行选项(比如浏览器类型、并发数等),并且设置好结果汇报机制以便于分析失败原因。幸运的是,TestNG自带了一套完善的XML配置体系允许自定义这些方面;另外借助第三方插件如ExtentReports还可以获得更美观详细的HTML格式报表输出[^3]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值