社区
C语言
帖子详情
如何写程序使得需要交互的程序自动完成交互。
joyself
2008-05-02 09:35:36
问题是这样的。
譬如有个程序a.out,运行后有些提示(不能直接后面跟参数,该程序我没有源码),假设:
[please input Yes or NO]:
[Please input a number]:
这里要输入 Yes 和 1,
不过我要重复测试这个程序的运行情况,譬如测个1000次, 大体意思就是这样的。
我想请问如何使得这个测试过程自动化,而不需要我每次去输入。
谢谢
...全文
138
8
打赏
收藏
如何写程序使得需要交互的程序自动完成交互。
问题是这样的。 譬如有个程序a.out,运行后有些提示(不能直接后面跟参数,该程序我没有源码),假设: [please input Yes or NO]: [Please input a number]: 这里要输入 Yes 和 1, 不过我要重复测试这个程序的运行情况,譬如测个1000次, 大体意思就是这样的。 我想请问如何使得这个测试过程自动化,而不需要我每次去输入。 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kingstarer
2008-05-03
打赏
举报
回复
用重定向和管道应该是可以实现的 只要输入的数字有规律
kingstarer
2008-05-03
打赏
举报
回复
文本里面的换行就相当于回车了
cceczjxy
2008-05-03
打赏
举报
回复
[Quote=引用 5 楼 joyself 的回复:]
引用 1 楼 brookmill 的回复:
1.
如果只运行一次,可以自己写一个文本文件tmp.txt,把需要输入的内容写进去:
Yes
1
然后 ./a.out < tmp.txt
2.
如果要运行1000次,而且每次输入的内容都一样,也很简单。
自己写一个shell脚本,调用"./a.out < tmp.txt"1000次就行了。
或者另外写个C程序,1000次循环system("./a.out < tmp.txt")
3.
如果要运行1000次,而且每次输入的内容不一样,就稍微麻烦一点…
[/Quote]
可以的
i=0
while [ $i -lt 1000 ]
do
./a.out <<EOF
$i
$i
<<EOF
i=`expr $i + 1 `
done
joyself
2008-05-03
打赏
举报
回复
[Quote=引用 1 楼 brookmill 的回复:]
1.
如果只运行一次,可以自己写一个文本文件tmp.txt,把需要输入的内容写进去:
Yes
1
然后 ./a.out < tmp.txt
2.
如果要运行1000次,而且每次输入的内容都一样,也很简单。
自己写一个shell脚本,调用"./a.out < tmp.txt"1000次就行了。
或者另外写个C程序,1000次循环system("./a.out < tmp.txt")
3.
如果要运行1000次,而且每次输入的内容不一样,就稍微麻烦一点。
我再想想
[/Quote]
我试了,不行阿,你试过可以吗? 输入一个选项后,后面的“回车”怎么在tmp.txt里体现?
kojie_chen
2008-05-02
打赏
举报
回复
学习
brookmill
2008-05-02
打赏
举报
回复
如果每次输入的内容不一样,可能可以这么办:
for (i=0; i<1000; i++)
{
fp = fopen("tmp.txt","w");
fprintf(fp, whatever);
fclose(fp);
system("./a.out < tmp.txt")
remove("tmp.txt");
}
michney
2008-05-02
打赏
举报
回复
自己写一个自动化测试的框架
读配置文件,读出输入的数据,和测试的次数
调用程序,传入参数,记录结果
brookmill
2008-05-02
打赏
举报
回复
1.
如果只运行一次,可以自己写一个文本文件tmp.txt,把需要输入的内容写进去:
Yes
1
然后 ./a.out < tmp.txt
2.
如果要运行1000次,而且每次输入的内容都一样,也很简单。
自己写一个shell脚本,调用"./a.out < tmp.txt"1000次就行了。
或者另外写个C程序,1000次循环system("./a.out < tmp.txt")
3.
如果要运行1000次,而且每次输入的内容不一样,就稍微麻烦一点。
我再想想
如何从零开始
写
小
程序
本文以「HelloWorld」小
程序
为例,介绍从零到一开发小
程序
的流程。先讲解用 FIDE 编辑小
程序
,包括认识 json、fxml、ftss 文件,创建页面等,还介绍了如何添加
交互
。最后说明将小
程序
上传到 FinClip 进行提审与上架的操作。
At.js – 用于 Web 应用
程序
的
自动
完成
库
At.js是一个用于Web应用
程序
的
自动
完成
库,支持HTML5 contentEditable元素,可在输入框实现
自动
完成
提示和表情等功能,如在Github或Twitter上所见。它不仅限于'@'符号,支持多种字符监听,提供键盘和鼠标控制,可通过自定义数据处理器和模板渲染进行高度定制。
如何在 HTML 中创建一个可
自动
完成
输入的文本框,类似于搜索引擎的搜索框功能,
需要
借助哪些技术?
本文介绍了在HTML中创建可
自动
完成
输入文本框的技术。分析了用户输入痛点,阐述
自动
完成
的核心步骤,包括数据来源、实时匹配和
交互
反馈。给出基础、进阶、高级三种代码示例,对比优缺点,还提供面试回答方法、总结核心步骤与避坑指南,并解答高频问题。
Blazored Typeahead:为Blazor应用打造的智能
自动
完成
控件
Blazored Typeahead是专为Blazor应用设计的智能
自动
完成
控件,能提升用户体验。它基于Blazor、ASP.NET Core等技术栈,具备
自动
完成
、模板支持等核心功能,适用于表单输入、数据筛选等场景,有高性能、易用、可扩展等优势,还具备强大自定义能力。
EDITPLUS JavaScript
自动
完成
插件实战指南
本文介绍EDITPLUS编辑器特性,包括功能、界面和文本编辑功能。着重阐述JavaScript
自动
完成
插件,涵盖其概念、作用、工作原理。还提及代码片段库构建方法及应用,以及插件代码高亮、括号匹配等额外特性,这些可提升JavaScript开发效率。
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章