为自动化测试和手工测试人员精心挑选的最佳软件测试工具
From Priyesh Sanghvi 测试窝 Today
【测试窝原创译文,译者:亚然】
市场上有许多免费的和付费的软件测试工具,而且每天都在增加。选择过多,致使我们很难选择一款正确的工具。我们可以在互联网上找到大量描述和比较各种不同工具的文章,但缺少一篇全面的文章,来介绍每个软件测试领域(如功能、性能、手动、自动化等)的最佳工具。
本文列出了一些软件测试工具,您可能需要用这些工具来更高效地完成软件测试工作。我在每个软件测试类别中列出了我们团队最喜欢用的工具之一,这些工具在我们的测试团队(TestFramework.io)中都有用到。下面推荐的这几种工具,通过在团队中广泛地审查和使用,让我有信心地说,在您的测试工作中采用这些工具是没错的。
免责声明:我们与这里推荐的任何工具都没有关系,也并不是通过推荐它们来获利。本文的目的仅仅是帮助大家选择一组我们认为在同类中最稳定和最好的工具。当然,这仅仅是我们的观点和经验,你的观点可能不同。请随时提出建设性意见,并添加到这个列表中,以使软件测试社区里的人们受益。
本文旨在帮助您根据您的软件测试类型和平台跳转到与您相关的部分。
自动化测试工具
这是我们强烈推荐的用于基于浏览器和本地应用程序功能测试的所有工具清单。
Selenium——尽管有很多公司在推行无脚本浏览器自动化测试工具,但它们都无法达到和Selenium WebDriver一样的稳定性、功能性和可伸缩性。Selenium Webdriver是实现基于web浏览器的应用程序UI自动化的必备工具。
授权:免费
获取链接:
https://www.seleniumhq.org/
Selenium Page Object Generator——如果您正在使用Selenium,这个页面对象生成器Chrome插件是一个必备工具。这个工具只需单击一下就可以在活动的Chrome选项卡上生成页面对象模型,就像魔术一样。使用此工具,您就不需要再为每个元素手工编写这些页面对象。
授权:免费
获取链接:
https://chrome.google.com/webstore/detail/selenium-page-object-gene/epgmnmcjdhapiojbohkkemlfkegmbebb
Firebug——这个Firefox插件对于自动化测试人员来说是必须的。Firebug与Firefox集成,让您在浏览时可以轻松使用丰富的开发工具。您可以在任何web页面中编辑、调试和监视CSS、HTML,JavaScript。
授权:免费
获取链接:
https://addons.mozilla.org/en-US/firefox/addon/firebug
Appium——虽然不完美,但它仍然是用于本地、混合和移动应用程序的最佳测试自动化框架。此外,它支持iOS、Android和Windows应用程序,使其成为大多数移动平台上使用的通用框架。
授权:免费
获取链接:
http://appium.io/
TestNG(Java)\pytest(Python)\NUnit (c#)
——使用Selenium/Appium,您将需要一个测试框架工具来帮助您定义测试用例、测试套件并有效地运行它们。根据您在Selenium或Appium中使用的编程语言,选择相关的测试框架来运行您的测试脚本。这些框架也用于运行您的单元测试用例。
授权:免费
获取链接:
TestNG — https://testng.org/,
pytest — https://pytest.org/ ,
NUnit —https://nunit.org/
手工测试工具包
如果您是手工Web/Mobile测试人员,那么您的工具包中应该包含以下工具。这些工具都做了一些特定的事情来帮助您提高测试速度和总体效率。
Web Developer——WebDeveloper扩展使用各种Web开发工具向浏览器添加工具栏按钮。这个扩展有超过百万的用户,证明它很实用。
授权:免费
获取链接:
https://chrome.google.com/webstore/detail/web-developer/bfbameneiokkgbdmiekhjnmfkcnldhhm?hl=en-US
Responsive Web Design Tester——这是测试您的网站响应速度的一种快速简便的方法。您可以使用它在各种移动设备上测试您的移动站点。这个扩展模仿了移动设备的大小和浏览器。
授权:免费
获取链接:
https://chrome.google.com/webstore/detail/responsive-web-design-tes/bdpelkpfhjfiacjeobkhlkkgaphbobea?hl=en-US
Bug Magnet ——Chrome和Firefox的探索性测试助手。此工具可以在可编辑元素的上下文菜单(右键单击)中添加将常见问题值和边缘案例,因此您可以将它放在手边,并在探索性测试期间轻松访问它们。。
授权:免费
获取连接:
https://bugmagnet.org/
Color Zilla——高级吸管,拾色器,渐变发生器和其他丰富多彩的东西。
授权:免费
获取链接:
https://chrome.google.com/webstore/detail/colorzilla/bhlhnicpbhignbdhedgjhgdocnmhomnp?hl=en
Whatfont——在网页上识别字体最简单的方法。
授权:免费
获取链接:
https://chrome.google.com/webstore/detail/whatfont/jabopobgcpjmedljpbcaablpmlmfcogm?hl=en
Page Ruler——绘制标尺来获取像素大小和位置,并测量任何web页面上的元素。
授权:免费
获取链接:
https://chrome.google.com/webstore/detail/pageruler/emliamioobfffbgcfdchabfibonehkme?hl=en
Email on Acid——它提供了超过70个客户端和设备上的无限制邮件测试,以便你能了解到电子邮件在到达目标收件箱之前的样子。
获取链接:
https://www.emailonacid.com/
授权:付费
Snagit——用过之后,您将不想再用任何其他的屏幕捕获工具。Snagit做到了这一点,而且做得更多。
获取链接:
https://www.techsmith.com/screen-capture.html
授权:付费
World Space Assure——通过逐步指导和构建报告进行辅助功能测试。
获取链接:
https://www.deque.com/tools/worldspace-assure/
授权:付费
API测试
在现代化测试中,API测试已经变得和UI测试一样重要。手动和自动化测试人员需要测试api。
对于自动化测试人员
SoapUI/SoapUI Pro
——SoapUI是一个开源的api测试工具,它同时支持SOAP和REST。而对于SoapUI Pro,如果您需要使用它更多的功能,那就需要付费版本了。对于我们80%的客户来说,SoapUI已经足够了。如果您是个自动化测试人员,那么SoapUI/SoapUI Pro是您进行API测试所需的惟一工具。
授权:SoapUI免费,SoapUI付费
获取链接:
SoapUI — https://www.soapui.org/open-source.html ,
SoapUI Pro—https://www.soapui.org/
对于手工测试人员
Runscope—如果您是手工测试api,Runscope有一个更简单的接口,其中包含您可能需要的所有选项。注意:Runscope也可以做自动化的API测试。
授权:付费
获取链接:
https://www.runscope.com/
性能测试
我们这里有两个最爱用的,一个是开源的,另一个是付费的。这两种工具都有类似的功能,但如果你的公司不喜欢开源的工具,那么就使用付费工具——Apica。
Jmeter ——Apache Jmeter用于测试静态和动态资源、Web动态应用程序的性能。它还用于模拟服务器、服务器组、网络或对象上的重载,以测试其强度或分析不同负载类型下的总体性能。
授权:免费
获取链接:
https://jmeter.apache.org/
Apica—Apica是一个付费版本,本质上可以做与Jmeter相同的事情,但它具有更好的支持团队和更短的学习周期。
授权:付费
获取链接:
https://www.apicasystems.com/load-testing/
代码覆盖率
您整体测试策略中应该包含将代码覆盖率,因为这是测试公式中的一个重要部分,而且设置代码覆盖率并不困难。一旦您启动并运行了它,就不需要对它进行太多的调整。代码覆盖工具是特定于编程语言的,所以我为当下每种流行语言都列出了一个。
Atlassian Clover (Java, Groovy)\Bullseye (C / c++)\Istanbul (Javascript)或cover .py (Python)
——根据平台的编程语言,选择一种并开始检测代码,以便在每次测试时报告代码覆盖率。开始设置目标,以便在测试计划中达到接近100%的代码覆盖率。
获取链接:
Atlassian Clover——https://www.atlassian.com/software/clover,
Bullseye — https://www.bullseye.com/,
Istanbul — https://istanbul.js.org/,
Coverage.py — https://coverage.readthedocs.io/en/v4.5.x/
Atlassian Clover, Bullseye — 付费,
Instanbul , Coverage.py— 免费
测试管理
您需要一个测试管理工具来记录和管理您所有的测试计划、手动测试组件、手动测试用例、结果等等。市场上有很多工具,从免费到数万美元的不等,基本上都是使用不同的功能和用户自定义来完成测试管理功能。
在JIRA中的测试管理解决方案。
Zephyr -在JIRA中进行全面的测试管理和测试执行。您可以根据需要标记每个测试,并跟踪JIRA中的所有bug。我们只有当客户希望在JIRA中有一个测试管理系统时才使用Zephyr。
获取链接:
https://www.getzephyr.com/products/zephyr-for-jira
授权:付费
独立测试管理工具
如果您不需要在JIRA中进行测试管理,那么您最好使用TestRail。TestRail具有现代化测试管理工具所需的全部功能,而且它能减轻您公司的成本。
获取链接:
https://www.gurock.com/testrail/tour/modern-test-management
授权:付费
测试数据生成
对于任何手工或自动化测试,都需要输入大量数据。当然,您不希望在所有测试运行中向被测试得应用程序提供相同的数据。有一些工具可以为您生成数据。
Mockaroo——Mockaroo可以生成CSV、JSON、SQL和Excel格式的真实测试数据。字段类型包括姓名、电子邮件、ssn、性别、IP、VIN和许多其他类型。
获取链接:
https://www.mockaroo.com/
授权:使用较小的数据量 免费/使用较大的数据量 付费
测试主控面板
在您构建了令人印象深刻的测试组件,实现了出色的测试覆盖率之后,就需要一个地方来显示您的测试状态,以便团队中的其他人可以看到您的辛勤工作。好的主控面板不仅能给你的团队留下深刻印象,还能帮助你做出更明智的决定。
ReportPortal.io——这是一个开源的测试自动化面板,它的可配置度很高,保证会给您的团队成员留下深刻印象,不用多说,ReportPortal.io是一款出色的测试报告工具。
获取链接:
http://reportportal.io/
授权:免费
云测试
随着设备、操作系统和浏览器组合的不断增加,您的内部设备不可能始终保持最新状态。这就需要依赖云测试基础设施提供商为您的Web和移动测试需求提供不同的设备、操作系统和浏览器组合。
Sauce Labs——虽然有很多山寨版和廉价版,我们依然建议使用Sauce Labs来进行云测试。他们拥有最好的虚拟和物理资源基础设施,以及强大的客户基础。此外,如果要将IP放在云上,最好选择最好的供应商,而不是用其他更便宜或者更不安全的替代品。
获取链接:
https://saucelabs.com/
授权:付费
众测
如果您想让web或移动应用程序由全球的“真实”用户进行测试,那么使用Crowd Testing要比亲自寻找这些用户更容易。
Applause——他们自称是众测领域的领军者,我们没有理由反驳他们的说法。他们的测试社区中有400K以上的测试人员,可以在几分钟内测试您应用程序的功能、可访问性、安全性和可用性。
获取链接:
https://www.applause.com/
授权:付费
数据库测试
作为测试策略的一部分,我们总是以添加测试组件来测试数据库。如果数据库测试是您整体测试策略的一部分,那么您应该考虑部署一个数据库测试工具,可以帮助提高手工和自动化测试的效率。
DbFit——是直接从浏览器编写、管理和执行数据库相关测试的完整解决方案。这个测试可以很容易地自动化并集成到您的CI系统中。
获取链接:
http://dbfit.github.io/dbfit/
授权:免费
行为驱动开发
我们TestFramework.io是BDD的拥趸者。BDD不仅可以帮助您开发想要产品,而且还增加了不同技术和非技术利益相关者之间的协作。
Cucumber (Python)或Cucumber (Javascript、Java、Ruby、Kotlin)——Cucumber和Behave都是开源BDD平台,背后有强大的社区支持。如果您正在使用BDD,那么根据您使用的语言选择它们中的任何一个都是没错的。
获取链接:
Behave:https://github.com/behave/behave,
Cucumber: https://docs.cucumber.io/
授权:免费
基于人工智能的测试
2018年,基于人工智能的软件测试势头正旺。从人工智能机器人测试您的应用程序,到NLP引擎读取测试计划和自动生成测试脚本,在这个领域新兴起很多公司。时间会证明哪家公司会成功,哪家会失败。
Autonomiq——这是一家基于人工智能的测试公司,它的技术看起来最有前景。只需读取用简单的英语编写的测试计划,automiq AI引擎就可以在几秒钟内为基于Web的应用程序生成Selenium脚本。虽然该平台仍然存在各种各样的问题,但在它提供一个完整的解决方案之前,这只是一个时间问题。
获取链接:
https://autonomiq.io/
授权:付费
数据虚拟化
对于某些特定的场景,有时您可能希望用生产数据进行测试,但是出于安全考虑可能不允许您访问生产数据。数据虚拟化工具可以帮助您轻松地复制、提供和掩盖生产数据。
Delphix—— Delphix具有足够的自动化级别,使QA团队能够通过自助服务访问他们的数据。QA工程师无需依赖IT票务系统,可以轻松地为数据添加书签,并将其重置为任何以前的状态。
获取链接:
https://www.delphix.com/solutions/test-data-management
授权:付费
结论
本文的目的是让您对TestFramework.io中的测试专家使用的工具箱有一个初步的了解。我们的团队每天都在广泛地研究和使用这些工具。我希望这个列表能帮助你们中的一些人避免花费很多时间研究不同的工具,其中许多工具用处不大,而有些工具实际上价格过高。为了保证文章的简洁,我并没有细说每种工具的优缺点。如果您有兴趣获得其中任意工具的更多信息,请发表您的评论,我将给出更详细的反馈。
译者简介:亚然,软件测试爱好者,长期从事软件测试工作
Views 151
Wow5