Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

吉云

今天跟大家唠唠我搞的这个 “mocha java” 实践,也不是真的用 Mocha 搞 Java,别误会!是想着能不能用 Mocha 这个 JavaScript 测试框架,来测试一下我写的 Java 代码。

起初就是觉得,我 Java 代码写得是不是够健壮,老是自己肉眼看,效率太低,而且容易漏。听说 Mocha 在 JavaScript 测试界挺火的,就寻思着能不能借过来用用。

一开始的想法是这样的:

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

  • 先搭个环境,让 Mocha 能跑起来。
  • 然后写点测试用例,看看能不能测到我的 Java 代码。
  • 要是能搞定,以后写 Java 代码就用它来保驾护航。

环境搭建

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

Mocha 是 JavaScript 的东西,得先装个 *,这个不用多说,大家都懂。装完 *,就可以用 npm 来安装 Mocha 。我直接全局安装,这样以后用起来方便:

npm install -g mocha

装完之后,命令行敲个 mocha --version 看看是不是安装成功。没问题的话,就该想想怎么让 Mocha 和 Java 代码扯上关系。

桥梁搭建

这才是重点, Mocha 本身肯定不能直接读懂 Java 代码,得有个“桥梁”才行。我查半天资料,发现可以先用 Java 执行器将 Java 代码编译打包成 jar 包,然后用 * 的 child_process 模块来执行这个 jar 包,这样 Mocha 就可以通过输入输出来间接测试 Java 代码。

我得写个 JavaScript 脚本,用 child_process 来执行 Java 的 jar 包。大概代码长这样:

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

javascript

const { exec } = require('child_process');

function executeJava(className, method, params, callback) {

const command = `java -jar * ${className} ${method} ${*(' ')}`; // 你的jar包名称

exec(command, (error, stdout, stderr) => {

if (error) {

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

*(`执行出错: ${error}`);

return callback(error);

if (stderr) {

*(`标准错误输出: ${stderr}`);

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

*(`标准输出: ${stdout}`);

callback(null, stdout);

* = { executeJava };

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

这里 是你的 Java 项目打包后的 jar 包名称。 className 是你要调用的 Java 类名, method 是方法名,params 是参数,然后把这些信息都传给 Java 程序。

编写测试用例

有这个 “桥梁”,就可以开始写测试用例。新建一个 JavaScript 文件,比如 ,然后引入 Mocha 和我们上面写的 executeJava 函数:

javascript

const assert = require('assert');

const { executeJava } = require('./java-executor'); // 桥梁文件

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

describe('Java代码测试', function() {

it('测试加法函数', function(done) {

executeJava('Calculator', 'add', [1, 2], (err, result) => {

*(parseInt(result), 3);

done();

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

这里我写一个简单的测试用例,测试一个 Java 类的 add 方法。Calculator 是 Java 类名,add 是方法名,[1, 2] 是参数。然后,断言 Java 代码返回的结果是不是 3。

Java 代码准备

别忘准备 Java 代码。我写一个简单的 Calculator 类,里面有个 add 方法:

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

java

public class Calculator {

public static void main(String[] args) {

String className = args[0];

String methodName = args[1];

int[] params = new int[* - 2];

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

for (int i = 2; i < *; i++) {

params[i - 2] = *(args[i]);

if (*("Calculator") && *("add")) {

*(add(params[0], params[1]));

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

public static int add(int a, int b) {

return a + b;

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

一定要记得把这个 Java 代码编译打包成 。编译打包过程就不细说,大家都懂的。

运行测试

在命令行里运行 mocha 命令,就可以看到测试结果。如果一切顺利,应该会显示测试通过。

总结

这个 “mocha java” 实践就是用 Mocha 来间接测试 Java 代码。虽然有点绕,但是确实能用。以后写 Java 代码,就可以用 Mocha 来跑跑测试,心里踏实多。这只是一个简单的例子,实际应用中可能还要考虑更多情况,比如异常处理、复杂参数等等。不过思路都是一样的。

希望这个分享对大家有所帮助!

Mocha Java 测试框架怎么配置?手把手教你快速搭建测试环境。

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]