草庐IT

ruby - 如何在 watir 测试套件结束时关闭浏览器?

使用ruby​​的watir测试网络应用程序时,浏览器最后会保持打开状态。网上的一些建议是,要进行真正的单元测试,您应该在每次测试时(在拆卸调用中)打开和关闭浏览器,但这很慢而且毫无意义。或者他们做这样的事情:defself.suites=superdefs.afterClass#Closebrowserenddefs.run(*args)superafterClassendsend但这会导致摘要输出不再显示(诸如“100次测试、100次断言、0次失败、0次错误”之类的内容仍应显示)。我怎样才能让ruby​​或watir在我的测试结束时关闭浏览器? 最佳答案

ruby - 如何检查 RSpec 测试套件中的故障?

我正在试验RSpec并考虑一个仅在测试套件通过时才更改随机种子的系统。我试图在after(:suite)block中实现它,该block在RSpec::Core::ExampleGroup对象的上下文中执行。虽然RSpec::Core::Example有一个方法“exception”,允许您检查是否有任何测试失败,但在上似乎没有类似的方法RSpec::Core::ExampleGroup或示例列表的任何访问器。那么,如何检查测试是通过还是失败?我知道这可以使用自定义格式化程序来跟踪是否有任何测试失败,但格式化过程影响测试的实际运行似乎不是一个好主意。 最佳答

ruby-on-rails - 如何在没有 Rake 的情况下运行完整的 MiniTest 套件?

看了thisquestion已经,这或多或少反射(reflect)了我目前如何运行我的整个套件。此外,我还设置了以下rake任务:Rake::TestTask.newdo|t|t.name="spec:models"t.libs但我注意到当我使用timerakespec:models运行它时,它在大约2.36秒内完成。如果我使用ruby/path/to/spec.rb运行该目录中的所有单独测试(目前所有测试都与ActiveRecord隔离——还没有持久性,所以速度非常快),它们的累计总用户时间是2.36秒,但我也注意到虽然每个文件从开始到结束需要0.4用户秒来执行,但MiniTest报

ruby-on-rails - save_and_open_page 和 spork,spork 正在丢失测试套件/输出

当我用spork运行我的rspec测试时,每次我使用capybara的save_and_open_page时,spork都会丢失测试套件......或者可能不再输出任何东西......查看日志#=>withoutsave_and_open_page09:04:24-INFO-SporkserverforRSpec,Test::Unitsuccessfullystarted09:04:24-INFO-Guard::RSpecisrunning09:04:24-INFO-RunningallspecsRunningtestswithargs["--drb","-f","progress",

ruby - 使用 Ruby MiniTest 时套件之前/之后

在MiniTest中是否有RSpec的before(:suite)和after(:suite)的替代方案?我怀疑自定义测试运行器是有序的,但我无法想象这不是一个常见的要求,所以有人可能已经实现了。:-) 最佳答案 有setup()和teardown()方法可用。该文档还列出了可用的before()和after()。编辑:您是否希望在每次测试之前或整个套件完成之前或之后运行一些东西? 关于ruby-使用RubyMiniTest时套件之前/之后,我们在StackOverflow上找到一个类似

javascript - ECMAScript 5 支持测试套件

有谁知道是否存在测试ECMAScript5支持的测试套件(例如,用QUnit编写)? 最佳答案 最“官方”的测试套件可能是ECMAScriptTest262,由EcmaTC39的成员开发。还有开源的ECMAScript5ConformanceSuite由Microsoft和Google开发Sputnik,它测试ECMAScript3的“所有方面”和ECMAScript5的部分内容。这两个套件都包含在ECMAScriptTest262中。如果您只想测试基本支持(例如,新功能的存在,而不是它们是否在每种情况下都表现正确),可以使用ECM

javascript - nightwatch.js 在测试套件结束时暂停

我一直在使用nightwatch.js进行功能测试自动化。问题是测试套件完成后测试暂停。它不会结束该过程。代码如下所示:varafterSuite=function(browser){dbFixture.deleteCollectionItemById(companyId,'cilents');dbFixture.deleteCollectionItemById(customerId,'users');dbFixture.deleteCollectionItemById(assetId,'assets');dbFixture.deleteFile(imageId);browser.en

javascript - 如何使用 Protractor 中的特定功能运行某些套件

我有一个同时适用于桌面浏览器和移动浏览器的网站,显然它们具有不同的UI。在我的Protractor配置文件中,一些套件需要使用普通(桌面)用户代理运行,而其他一些套件需要使用移动用户代理运行。我知道有一个名为multiCapabilities的选项:multiCapabilities:[{'browserName':'chrome'},{'browserName':'chrome','chromeOptions':{'args':['--user-agent="iphone"']}}],像这样使用配置可以在这两个浏览器(一个用于桌面,另一个用于移动)上运行所有套件,但我想知道是否有一种

javascript - 当不同文件中存在测试时,如何在 jasmine 中对测试套件进行分组?

根据文档,我们可以有测试套件的组-子组,但它们只存在于一个文件中,如下所示describe('MainGroup-Module1',function(){beforeEach(function(){module('app');});describe('subgroup-1',function(){//Subgroup//specsgoeshere});describe('subgroup-2',function(){//Subgroup//specsgoeshere});});如果我想将subgroup-1和subgroup-2保存在两个不同的文件中,我如何将这两个子组分组到MainG

javascript - Protractor - 发送规范/套件名称作为参数

我可以使用规范或套件名称作为参数来运行Protractor测试吗?我目前正在运行它:protractormyconf.js谢谢。 最佳答案 是的,有特定的--specs命令行参数:$protractor--helpUsage:protractor[options][configFile]configFiledefaultstoprotractor.conf.jsThe[options]objectwilloverridevaluesfromtheconfigfile.Options:--helpPrintProtractorhelp