问题标签 [automated-tests]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
build-automation - 批处理文件中的字符串符号操作?
有没有办法使用 .bat/.cmd 文件获取字符串的子字符串?
例如,给定字符串“hello.txt”,有没有办法去除 .txt?
编辑:还有一种更通用的方法可以做到这一点,而不是假设它是文件名或文件路径?
build-automation - 学习高级批处理文件使用的最佳免费资源?
学习高级批处理文件使用的最佳免费资源是什么?
c# - 将自制测试应用程序转换为标准单元测试框架
我已经为一个软件编写了很多测试(这是一件很棒的事情),但它本质上是作为 C# 中的独立测试构建的。虽然这工作得很好,但它也有一些缺点,其中最重要的是它没有使用标准的测试框架,并且最终要求运行测试的人注释掉对不应该运行的测试的调用(当不希望运行整个测试“套件”时)。我想将它整合到我的自动化测试过程中。
我看到 VS 2008 的测试版有一个“通用测试”的概念,它可能会做我想做的事,但我们目前无法在那个版本上花钱。我最近开始使用 VS 2008 Pro 版本。
这些测试方法遵循一个熟悉的模式:
- 为测试做一些设置。
- 执行测试。
- 为下一次测试重置。
它们中的每一个都返回一个布尔值(通过/失败)和一个字符串 ref 来表示失败原因,如果失败则填写。
从好的方面来说,至少测试方法是一致的。
今晚我坐在这里,考虑明天早上我可能采取的方法,将所有这些测试代码迁移到测试框架,坦率地说,我对手动钻研超过 8-9K 行测试代码的想法并不那么兴奋进行转换。
你有过进行这种转换的经验吗?你有什么建议吗?我想我可能会因为全局搜索/替换和手动更改测试而苦苦挣扎。
有什么想法吗?
windows-installer - 自动安装 MSI
自动安装 MSI 文件或安装程序 .exe 的最佳方法是什么?我们想从我们的构建系统对已安装的产品副本进行一些自动化测试。我们的安装程序具有通常的许可证接受屏幕、安装位置等。
正如 FryHard 指出的那样,有两个特别方便的选项:
- "/quiet" - 不使用交互
- "/passive" - 仅进程栏,无人值守模式
performance - 如何快速保持自动化测试?
自动化测试必须快速反映实时项目状态。这个想法是:
- 在执行任何对存储库自动构建的提交之后(尽可能快地完成)。
- 如果构建成功自动测试开始。必须快。
这是我知道的最好的方法来确定你的更改是否会破坏任何东西。
起初,快速构建似乎很难,但我们设法将其保持在 100 秒左右。用于 105(!) 个项目的解决方案 (MSVS 2008 C#)。
测试似乎没有那么简单(我们使用 NUnit FW)。单元测试不是一个大问题。是集成测试杀死了我们。而不是它们更慢的事实(任何关于如何使它们更快的想法都非常感谢),而是必须设置的环境要慢得多(atm ~1000 秒)!
我们的集成测试使用需要重新部署的 web/win 服务(目前有 19 个)以反映最新的变化。这包括重新启动服务和大量 HDD R/W 活动。
任何人都可以分享如何组织/优化环境和工作流程以加快自动化测试阶段的经验。什么是“低级”瓶颈和解决方法。
欢迎 PS 书籍和广泛的文章,但更赞赏现实世界的工作解决方案。
continuous-integration - 与 Nant 持续集成
我准备第一次使用持续集成。我将使用 Nant 进行自动化构建和测试任务,并尝试找到合适的 CI 工具来轮询存储库并执行 Nant 脚本。
到目前为止,我已经大致研究了以下内容:
- 哈德逊
- 巡航控制
- 德拉科
到目前为止,我的感觉是,由于大部分工作将由 Nant 完成,Draco 会很好,因为它应该很容易安装/设置。另一方面,Cruise Control 和 Hudson 可能会提供更好的报告选项。
将 Nant 用于构建和测试任务时,执行持续集成的最佳方式是什么?
automated-tests - Mercury Quick Test Pro - 使用自定义网格进行测试
我们正在尝试创建一些引用供应商自定义网格的测试。不幸的是,QTP 只将它识别为一个 WinObject,这是毫无用处的。我们需要能够导航网格并更改单元格值,双击单元格(不使用 X,Y 坐标)等。
理想情况下,我们想让 QTP 了解这个对象是一个网格并将其视为一个网格。
任何帮助将不胜感激。
谢谢
乔恩
scripting - 为什么删除的文件会重新出现在 Vista 中?
我在我的程序上运行了一个自动测试,该测试会生成一些大型 MPG 文件以及其他文件。运行测试后,我让脚本自行清理。其他文件(二进制文件和文本文件的混合)被删除,没有问题。然而,MPG 文件不会被删除。如果我在测试运行后尝试从资源管理器中手动删除 MPG 文件,它们会从资源管理器窗口中删除,仅在几秒钟后重新出现。进程资源管理器显示它们正在被 explorer.exe 使用。最终,我能够删除这些文件。知道为什么会这样吗?
ruby-on-rails - Selenium RC:自动在多个浏览器中运行测试
因此,我开始创建一些 Ruby 单元测试,使用Selenium RC直接在浏览器中测试我的 Web 应用程序。我正在将Selenum-Client用于红宝石。我为所有其他硒测试创建了一个基类来继承。
这会创建许多 SeleniumDriver 实例,并且在每个实例上调用所有缺少的方法。这实质上是并行运行测试。
其他人是如何实现自动化的?
这是我的实现:
这可行,但如果一个浏览器失败,整个测试就会失败,并且无法知道它在哪个浏览器上失败。