我对如何进行e2e测试在grails上运行的角度应用程序感到困惑。 Grails运行我的应用程序并提供端点,但Karma套件仅使用浏览器作为引擎来运行javascript。因此,当测试执行时,我的端点不在“业力世界”中。我该如何做以下事情?
describe('e2e', function() {
beforeEach(function() {
browser().navigateTo('/alerts/');
});
}
定义/alerts
端点并通过grails路由。可以这样做,还是我必须设置某种grails-karma插件?
答案 0 :(得分:0)
是的,可以做到。测试套件必须由(任何)服务器提供服务。因为你无论如何都必须设置一个服务器,所以业力在这里没什么用。
更简单的方法:如果您的测试套件是Web应用程序的一部分,则服务器是grails one,并且一旦启动grails服务器,就可以使用url访问测试套件。棘手的问题是为brower()。navigateTo()提供正确的URL,原始端点可能是正确的。然后自动从Web应用程序中删除测试套件,然后再投入生产。
其他方式:另一台服务器为测试套件提供服务,并且由于您将拥有Grails服务器和测试服务器,因此必须重定向请求。它保持分离,但你必须修改你的生产代码来测试它,这也是不完美的。