如何编写JavaScript集成测试?
我必须为RequireJS应用程序编写集成测试。我以前从来没有这样做过,在网上也找不到任何例子。为什么关于那个主题的信息那么少?我读了很多关于什么是集成测试的描述,但我仍然不知道如何编写它们。我的应用程序没有服务器或db代码,这意味着我只能测试不同模块的协作,对吗?我已经试着用Jasmine编写了一些测试,例如,当Module1中调用如何编写JavaScript集成测试?,javascript,unit-testing,testing,integration-testing,jasmine-jquery,Javascript,Unit Testing,Testing,Integration Testing,Jasmine Jquery,我必须为RequireJS应用程序编写集成测试。我以前从来没有这样做过,在网上也找不到任何例子。为什么关于那个主题的信息那么少?我读了很多关于什么是集成测试的描述,但我仍然不知道如何编写它们。我的应用程序没有服务器或db代码,这意味着我只能测试不同模块的协作,对吗?我已经试着用Jasmine编写了一些测试,例如,当Module1中调用render()时,Module2被实例化,并且Module2.render()也被调用Module2.render()应该添加一些html代码。因此,我使用jas
render()
时,Module2被实例化,并且Module2.render()
也被调用Module2.render()
应该添加一些html代码。因此,我使用jasmine-jquery.js测试是否添加了html代码:expect($('#test1')).toExist()代码>
这是集成测试吗?还是将其添加到单元测试中
我也不确定是否可以用Nightwatch.js编写集成测试,这是否合理。我现在正在用这个框架编写系统测试,但它似乎有点像集成测试,因为我正在测试组件是否协同工作。夜视测试何时称为集成测试,何时称为系统测试?我认为“集成”测试应该检查js代码如何与应用程序的其余部分“集成”。也就是说,如果它向后端发送和接收正确的消息,或者从后端接收正确的消息,如果它与浏览器存储等正确通信,那么您所描述的看起来就像一个单元测试
我不知道夜表,但根据他们的网页
Nightwatch.js是一个易于使用的基于Node.js的端到端(E2E)测试解决方案,用于基于浏览器的应用程序和网站
它应该完成任务如果我使用一个总是以相同消息响应的假服务器,并测试一个函数在成功的服务器请求后是否调用回调函数,这是否是一个集成测试?根据我编写单元测试和集成测试的经验,在许多情况下看到它们都混淆了。我喜欢采用以下规则:单元测试测试单个功能,例如公共功能;集成测试测试应以定义的方式一起交互的多个功能。不管测试的定义如何,重要的是控制输入并了解这两种情况下的预期输出。@JeremyBrooks的定义很好,根据国际软件测试资格委员会(ISTQ)的教学大纲: