【发布时间】:2016-08-23 23:36:43
【问题描述】:
function addTwo (a, b) {
return a + b;
}
//Leave the function call
addTwo(50, 100);
我正在学习 React,我正在尝试创建一个 codecademy 类型的网站作为“学习项目”,但遇到了 JS 问题。
假设你有上面的功能,你如何测试不止一种情况?到目前为止,我正在测试:
eval(CODE PULLED IN HERE) === 150 ? alert('Correct!') : alert('Wrong!');
这显然会提醒正确,这对于这种情况是可以的。但是对于其他问题(甚至是这个问题),我需要不止一个测试用例,这就是我遇到的问题。
那么,我如何测试多个测试用例,或者是否有完全其他的方式来完成我想要实现的目标?
非常感谢任何帮助/提示,
对于那些了解 React 的人,这里有一些代码可以查看我目前拥有的一些内容:
const CodeEditor = React.createClass({
getInitialState () {
var initialValue = [
"function addTwo () {",
" ",
"}",
"//Leave the function call",
"addTwo(50, 100);"
].join("\n");
return {
kataValue: initialValue
}
},
onChange (newValue) {
this.setState({kataValue: newValue});
},
evalCode () {
var val = this.state.kataValue
eval(val) === 150 ? alert('Correct!') : alert('Wrong!');
},
render () {
return (
<div className="code-editor-wrapper">
<AceEditor
name="editor"
mode="sh"
theme="chaos"
onChange={this.onChange}
value={this.state.kataValue}
editorProps={{$blockScrolling: true}}
/>
<button onClick={this.evalCode} className="spec-btn submit-code-btn">Evaluate</button>
</div>
)
}
})
【问题讨论】:
-
您可以使用
Math.random()创建输入和结果吗?
标签: javascript function unit-testing testing reactjs