51Testing软件测试论坛
标题:
system()函数的用法
[打印本页]
作者:
winthnight
时间:
2009-12-9 16:09
标题:
system()函数的用法
想用LR调用一个带参的系统外部命令
假设被调用的命令在cmd下的执行语句为 C:\Test.exe --username=abc --password=123 直接执行这条指令是能在数据库里留下登录记录的
现在我想用LR来调用它,脚本如下(我就用的一般的web/http协议的脚本,然后直接在action里写了如下一段):
Action()
{
char command[1024];
sprintf(command,"C:\Test.exe --username=abc --password=123" );
system(command);
return 0;
}
然后回放一遍脚本,我想的是能够成功执行指令在数据库留下记录,然后我再参数化并发
结果回放后弹出一个cmd命令框然后瞬间消失(正常的执行是需要一定时间的),也没在数据库里留下记录
我想知道我是哪儿弄的不对?这个被调用的应用程序是用visual studio写的然后build出来的,所以不能用web/http协议么?
请知道的指点一下啊~~大谢!
作者:
v522zy
时间:
2009-12-10 12:10
协议选的不对,web/http是对80端口的录制,而你的是C/S模式
应该选择客户端/服务器:MS SQL Server、ODBC、Oracle、DB2……,试试你数据库对应的协议
或者试试更底层的windows socket录制
作者:
Lennon
时间:
2009-12-11 17:40
本地的操作,跟协议没有关系
尝试将斜杠转义
sprintf(command,"C:\\Test.exe --username=abc --password=123" );
作者:
jacksboy
时间:
2009-12-11 17:50
system(command); 这个命令是专用于c脚本里才有的吧,在别的协议里能运行么。
反正我在别的协议里一运行这个命令就报错,只有在c协议下才通过。
作者:
Lennon
时间:
2009-12-11 18:28
在http协议里面是肯定可以运行的
作者:
shanxi
时间:
2009-12-13 11:03
Try C language
system("C:\\Test.exe --username=abc --password=123")
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2