Open Gaubee opened 2 years ago
run指令,目的是执行代码。包括单元测试、压力测试、运行指令等待。
本质上 tsc:watch 就是其中一种指令。
bfsp/bfsw run 本质和 bfsp/bfsw dev 没有差别。因为在该模式下,我们要强制开启dev:watch工作,因为我们是面向typescript编程。所以要确保所有js文件都是实时编译出来的。
只是启动后打开了run面板。编译通过之后,开始进行交互。 如果用户没有提供参数指令,那么进入询问模式: 此时列出所有项目的所有可测试项所有项目。用户可以通过勾选的方式进行测试(默认全部勾选)。
在勾选完后,回车,开始测试。
首先屏幕应该打印“带参数的run指令”给用户,方便用户下一次直接使用这个命令直接执行(如果是进行一次性执行,不需要dev:watch。只需要执行一次即可退出)。 此时所有的终端输出同步打印到 .bfsp/log/${ARGS-HASH}.${DATE-TIME}.test.log 文件中。这里的ARGS-HASH代表着测试参数的MD5-HASH,从而方便归纳测试报告。 run执行完成后,告知用户已经执行完成。但此时不会退出控制台,否则控制台会直接清空。要给用户浏览、复制日志输出的机会。用户也可以继续重新开始新的run。
.bfsp/log/${ARGS-HASH}.${DATE-TIME}.test.log
ARGS-HASH
如果时一次性执行,那么不会进入 blessed 终端模式,而是直接进行日志输出。
用户可以选中部分任务进行“实时执行”,此时我们将任务分为两类:
只要有文件发生改动就可以自动重新运行指令。
我们将变动的文件推给持续性任务,它自己决策接下来的运行
对于一次性任务,我们很难知道每一个测试函数会引用到哪些js文件相关联,这些文件甚至是跨项目的,所以目前来说,最简单的方式是只要执行了编译输出,那么就将测试测试的执行推入队列中。所以,我们能做的就是搞一次性任务运行队列来正确分配测试资源。
对于test指令 ,我们可以直接建立在run指令之上,差别就只是一个过滤器而已
run指令,目的是执行代码。包括单元测试、压力测试、运行指令等待。
1. 可交互面板
bfsp/bfsw run 本质和 bfsp/bfsw dev 没有差别。因为在该模式下,我们要强制开启dev:watch工作,因为我们是面向typescript编程。所以要确保所有js文件都是实时编译出来的。
只是启动后打开了run面板。编译通过之后,开始进行交互。 如果用户没有提供参数指令,那么进入询问模式: 此时列出所有项目的所有可测试项所有项目。用户可以通过勾选的方式进行测试(默认全部勾选)。
在勾选完后,回车,开始测试。
首先屏幕应该打印“带参数的run指令”给用户,方便用户下一次直接使用这个命令直接执行(如果是进行一次性执行,不需要dev:watch。只需要执行一次即可退出)。 此时所有的终端输出同步打印到
.bfsp/log/${ARGS-HASH}.${DATE-TIME}.test.log
文件中。这里的ARGS-HASH
代表着测试参数的MD5-HASH,从而方便归纳测试报告。 run执行完成后,告知用户已经执行完成。但此时不会退出控制台,否则控制台会直接清空。要给用户浏览、复制日志输出的机会。用户也可以继续重新开始新的run。2. 实时执行
用户可以选中部分任务进行“实时执行”,此时我们将任务分为两类:
对于一次性任务,我们很难知道每一个测试函数会引用到哪些js文件相关联,这些文件甚至是跨项目的,所以目前来说,最简单的方式是只要执行了编译输出,那么就将测试测试的执行推入队列中。所以,我们能做的就是搞一次性任务运行队列来正确分配测试资源。
3. 常见的任务种类
4. bfsp/bfsw run
对于test指令 ,我们可以直接建立在run指令之上,差别就只是一个过滤器而已