共计 1035 个字符,预计需要花费 3 分钟才能阅读完成。
描述
最近在用 es6 解 leetcode,当问题比较复杂时,有可能修正了新的错误,却影响了前面的流程。要用能用的测试工具,却又有杀鸡用牛刀的感觉,所以就写了个简单易用的 leetcode 开发测试工具,分享与大家。
工具安装
npm i leetcode_test
使用示例
codes:
let test = require(‘leetcode_test’).test
var twoSum = function(nums, target) {
if (nums.length < 2)
return null
for (let i = 0; i < nums.length; i++) {
let ele1 = nums[i]
let ele2index = nums.indexOf(target – ele1)
if(ele2index > -1 && ele2index !== i)
return [i, ele2index]
}
return null
};
let cases = [
[[[2, 7, 11, 15], 91], [0, 1]],
[[[2, 7, 11, 15], 9], [0, 1]],
]
test(twoSum, cases)
测试用例编写说明
leetcode 要测试的都是函数,参数个数不定,但返回值是一个。因此,我设计用例的输入形式为一个用例就是一个两个元素的数组,第一个元素是一个数组:对应输入参数;第二个元素是一个值。上面例子的输入参数是([2, 7, 11, 15], 91),第一个参数是数组,第二个参数是数值;返回值是一个数组([0, 1])。如果要测试的函数的输入参数就是一个数组,要注意输入形式,比如,求 [1,2,3,4] 平均值,要这样输入测试用例:[[[1,2,3,4]],2.5]
out:
test [1] fail, Input: [2,7,11,15], 91; Expected: [0,1]; Output: null
index.js:20
test [2] success, Input: [2,7,11,15], 9; Expected: [0,1]; Output: [0,1]
index.js:18
Result: test 2 cases, success: 1, fail: 1
index.js:28
running 4 ms
项目地址
工具地址:https://github.com/zhoutk/lee… 解答地址:https://github.com/zhoutk/lee…
最近一直在用,已经把输出的样子调得还能看过眼了,答案对比算法,也改进了。遇到问题,我会持续改进,大家遇到问题也可提 bug 给我,我会尽快处理。