草庐IT

html - 未捕获的类型错误 : Cannot read property 'env' of undefined

我使用的是jasmine1.2.0,它运行良好。现在我使用相同的代码,一切都和以前一样,唯一的区别是我转移到jasmine2.0.1,现在它不起作用......所有测试都失败了,我得到的错误是:“UncaughtTypeError:无法读取未定义的属性“env”。这是SpecRunner.html文件:JasmineSpecRunner......(function(){varjasmineEnv=jasmine.getEnv();jasmineEnv.updateInterval=1000;varhtmlReporter=newjasmine.HtmlReporter();varol

html - 未捕获的类型错误 : Cannot read property 'env' of undefined

我使用的是jasmine1.2.0,它运行良好。现在我使用相同的代码,一切都和以前一样,唯一的区别是我转移到jasmine2.0.1,现在它不起作用......所有测试都失败了,我得到的错误是:“UncaughtTypeError:无法读取未定义的属性“env”。这是SpecRunner.html文件:JasmineSpecRunner......(function(){varjasmineEnv=jasmine.getEnv();jasmineEnv.updateInterval=1000;varhtmlReporter=newjasmine.HtmlReporter();varol

javascript - Jasmine 测试模拟 tab 键按下并检测新聚焦的元素

我有一个jasmine测试,其中有2个输入字段。我专注于第一个输入,然后模拟“tab”键上的按键,并期望焦点在第二个输入上。不幸的是,这种情况并非如此。焦点从一开始就没有改变,我的测试失败了。如何解决这个问题,使失败的测试通过?我正在尝试测试的fiddle:http://jsfiddle.net/G2Qz3/1/Jasmine测试失败的fiddle:http://jsfiddle.net/mFUhK/4/HTML:JavaScript:functionsimulateTab(){varTAB_KEY=9;varkeyboardEvent=document.createEvent("Ke

javascript - Jasmine 测试模拟 tab 键按下并检测新聚焦的元素

我有一个jasmine测试,其中有2个输入字段。我专注于第一个输入,然后模拟“tab”键上的按键,并期望焦点在第二个输入上。不幸的是,这种情况并非如此。焦点从一开始就没有改变,我的测试失败了。如何解决这个问题,使失败的测试通过?我正在尝试测试的fiddle:http://jsfiddle.net/G2Qz3/1/Jasmine测试失败的fiddle:http://jsfiddle.net/mFUhK/4/HTML:JavaScript:functionsimulateTab(){varTAB_KEY=9;varkeyboardEvent=document.createEvent("Ke

javascript - 在单元测试中自动允许 WebRTC 权限

我正在为使用WebRTC的库编写单元测试。我的测试套件几乎每个单元测试都需要Chrome的许可,这需要我为每个测试手动点击“允许”按钮。有没有我可以更改的标志或设置以始终允许全局媒体访问,这样我的测试套件就不会提示权限?我在Chrome中使用Jasmine测试运行器。 最佳答案 好问题。编辑:使用Chrome的--use-fake-ui-for-media-stream标志,所有gUM调用都将被自动接受,并且永远不会弹出任何UI。我相信有一些关于浏览器标志的讨论,这意味着永远不需要通过UI进行权限确认,但据我所知,这还没有在任何浏览

javascript - 在单元测试中自动允许 WebRTC 权限

我正在为使用WebRTC的库编写单元测试。我的测试套件几乎每个单元测试都需要Chrome的许可,这需要我为每个测试手动点击“允许”按钮。有没有我可以更改的标志或设置以始终允许全局媒体访问,这样我的测试套件就不会提示权限?我在Chrome中使用Jasmine测试运行器。 最佳答案 好问题。编辑:使用Chrome的--use-fake-ui-for-media-stream标志,所有gUM调用都将被自动接受,并且永远不会弹出任何UI。我相信有一些关于浏览器标志的讨论,这意味着永远不需要通过UI进行权限确认,但据我所知,这还没有在任何浏览

javascript - 我怎样才能在 Jasmine 中拥有 beforeAll 功能? (不是 coffeeScript)

我需要知道是否有办法包含或使用beforeAll函数或类似的东西,以便我可以登录我的应用程序然后开始测试。现在我将登录操作放在第一个测试用例(it)中。这不是一个好的做法。如果除了使用beforeAll函数之外还有更好的方法来存储我的登录代码,请告诉我。我使用的是与coffee-script等任何其他框架无关的纯Jasmine。谢谢 最佳答案 这现在容易多了。从Jasmine2.1(2014年11月14日发布)开始,框架中内置了一个beforeAll函数。Herearethereleasenotes包含2.1中添加的所有内容。和he

javascript - 我怎样才能在 Jasmine 中拥有 beforeAll 功能? (不是 coffeeScript)

我需要知道是否有办法包含或使用beforeAll函数或类似的东西,以便我可以登录我的应用程序然后开始测试。现在我将登录操作放在第一个测试用例(it)中。这不是一个好的做法。如果除了使用beforeAll函数之外还有更好的方法来存储我的登录代码,请告诉我。我使用的是与coffee-script等任何其他框架无关的纯Jasmine。谢谢 最佳答案 这现在容易多了。从Jasmine2.1(2014年11月14日发布)开始,框架中内置了一个beforeAll函数。Herearethereleasenotes包含2.1中添加的所有内容。和he

javascript - 如何在javascript中模拟文件?

我正在开发一些小项目来锻炼我的TDD技能。该项目由一个音频播放器组成,它能够在播放列表中拖放文件。我使用Jasmine作为测试框架。我面临的问题是我无法模拟javascript文件来测试我的文件上传功能。我试图创建一个这样的文件:newFile(newBlob(),"name");但Chrome不允许手动创建文件。使用文件的构造函数是非法的。我找到了一个grunt.js的解决方案,它包括从grunt返回一些文件,但我真的不想将服务器端用于这么小的测试项目。这个问题有什么解决方法吗? 最佳答案 Chrome会让您创建一个新文件:var

javascript - 如何在javascript中模拟文件?

我正在开发一些小项目来锻炼我的TDD技能。该项目由一个音频播放器组成,它能够在播放列表中拖放文件。我使用Jasmine作为测试框架。我面临的问题是我无法模拟javascript文件来测试我的文件上传功能。我试图创建一个这样的文件:newFile(newBlob(),"name");但Chrome不允许手动创建文件。使用文件的构造函数是非法的。我找到了一个grunt.js的解决方案,它包括从grunt返回一些文件,但我真的不想将服务器端用于这么小的测试项目。这个问题有什么解决方法吗? 最佳答案 Chrome会让您创建一个新文件:var