Javascript 在执行其余测试时保持nodeJs服务器运行
我是nodeJS和webdriveIO新手,正在编写一些webdriveIO测试。我有两个功能: smsServer();和startTest() 1-smsServer() 2-开始测试();Javascript 在执行其余测试时保持nodeJs服务器运行,javascript,node.js,testing,selenium-webdriver,webdriver,Javascript,Node.js,Testing,Selenium Webdriver,Webdriver,我是nodeJS和webdriveIO新手,正在编写一些webdriveIO测试。我有两个功能: smsServer();和startTest() 1-smsServer() 2-开始测试(); 只是一些测试 我想让我的服务器保持运行,以接收一些验证代码,而第二个功能(测试)执行任何帮助都将得到感谢,否则我的老板会杀了我在不杀死进程或永远使用的情况下使用你的应用程序。 但是,我认为当你午餐时,你的应用程序的服务器必须仍然在运行 npm install forever 之后 forever
只是一些测试
我想让我的服务器保持运行,以接收一些验证代码,而第二个功能(测试)执行任何帮助都将得到感谢,否则我的老板会杀了我在不杀死进程或永远使用的情况下使用你的应用程序。 但是,我认为当你午餐时,你的应用程序的服务器必须仍然在运行
npm install forever
之后
forever start yourapp
我通过使用事件发射器找到了一个解决方案,因此我的服务器代码如下:
'use strict';
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())
app.get('/',function(req,res){
console.log('received sms %s', req.query.text);
process.emit('sms', req.query.text);
res.send(200);
});
app.post('/', function(req,res){
console.log('received sms %s', req.query.text);
process.emit('sms', req.query.text);
res.send(200);
});
module.exports = app;
因此,应用程序的其余部分将是
// decribe('some description', function(){
// some test code ...
return when.promise((resolve, reject)=>{
process.on('sms', (sms)=>{
// some work here
resolve();
});
// some other code
});
});
代码没有运行它给了我一些警告关于--spinSleepTime和--minoptime myscript文件名wdio.conf.js,谢谢在我用谷歌搜索它之后,永远是用来保持脚本持续运行的,这不是这里的问题,问题是保持脚本中的一小段代码运行而不被终止,谢谢。
// decribe('some description', function(){
// some test code ...
return when.promise((resolve, reject)=>{
process.on('sms', (sms)=>{
// some work here
resolve();
});
// some other code
});
});