Selenium 2024-06-29 Web UI 自动化测试 利用软件工具模拟用户在图形界面上与应用程序交互的过程,自动执行测试用例并验证 UI 的功能是否符合预期 使用自动化工具来打开网站/定位页面元素、操作元素(如输入文本、点击按钮等)模拟用户行为(如下拉菜单、滑动页面等) 通过 UI 自动化测试可以 提高测试效率、确保回归测试的全面性,减少重复工作,且对持续集成和持续部署过程帮助很大 UI 自动化技术也可以爬取网页的核心内容,并且结合数据处理,存储到数据库和二次使用,即爬虫应用 优点: 高效率 可以在较短时间内执行大量的测试用例,提高测试效率,对于回归测试,可以显著减少测试所需的时间和人力。 减少人为错误 自动化测试脚本是由代码控制的,相比于人工测试,可以减少由于人为因素导致的错误。 可重复性和一致性 自动化测试脚本可以反复执行,每次测试的条件和步骤都是一致的,保证测试的一致性和可重复性。 更好的资源利用 自动化测试可以在非工作时间执行,如夜间,充分利用无人值守时间,提高了资源的利用率。 缺点: 不能完全取代手工测试 自动化测试虽然可以执行大量的测试用例,但对于一些需要人脑判断结果的测试用例 或者对于新功能的首次测....
Junit 2020-01-07 什么是 Junit JUnit 是 ⼀个 Java 语 ⾔的单元测试框架,可以 ⼤ ⼤缩短你的测试时间和准确度。多数 Java 的开发环境都已经集成了 JUnit 作为单元测试的 ⼯具。 引入 pom 依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> 基本使用
JMH基准测试 2020-01-07 JMH 简介 JMH,即 Java Microbenchmark Harness,这是专 ⻔ ⽤于进 ⾏代码的微基准测试的 ⼀套 ⼯具 API,JMH 由 OpenJDK/Oracle ⾥ ⾯那群开发了 Java 编译器的人员所开发。 使用场景 已经找出了热点函数,⽽需要对热点函数进 ⾏进 ⼀步的优化时,就可以使 ⽤ JMH 对优化的效 果进 ⾏定量的分析。 想定量地知道某个函数需要执 ⾏多 ⻓时间,以及执 ⾏时间和输 ⼊ n 的相关性 ⼀个函数有两种不同实现(例如 JSON 序列化/反序列化有 Jackson 和 Gson 实现),不知道哪种 实现性能更好 快速上手 引入依赖 <dependency> <groupId>org.openjdk.jmh</groupId> <artifactId>jmh-core</artifactId> <version>1.21</version> </dependency> <dependency> <groupId>or....
Jmeter 2024-07-06 常用压力测试工具对比 loadrunner: 性能稳定,压测结果及细粒度大,可以自定义脚本进行压测,但是太过于重大,功能比较繁多 。 apache ab(单接口压测最方便): 模拟多线程并发请求,ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载, 简单DDOS攻击等 。 webbench: webbench首先fork出多个子进程,每个子进程都循环做web访问测试。子进程把访问的结果通过pipe告诉父进程,父进程做最终的统计结果。 压测不同的协议和应用 Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …) SOAP / REST Webservices FTP Database via JDBC LDAP 轻量目录访问协议 Message-oriented middleware (MOM) via JMS Mail - SMTP(S), POP3(S) and IMAP(S) TCP 等等 使用场景及优点 功能测试 压力测试 分布式压力测试 纯 Java 开发 上手容易,高性能....