我正在尝试使用{mount}方法对我的React类组件进行单元测试。当我尝试访问class变量(使用这个关键字)时,运行测试会给出一个未定义的错误。下面的示例,其中调用mount(
后,此.DataSource的计算结果为未定义
export class GridComponent extends React.Component { constructor(props) { super(props) this.state = { pageRecords: [], totalSize: 0 } this.options = { page: 1, sizePerPage: 10 } this.DataSource = [] //All records will be stored here } componentDidMount() { this.DataSource = this.props.recordArr this.parseProps() } componentWillReceiveProps(nextProps) { this.DataSource = nextProps.recordArr this.parseProps() } parseProps = () => { let pageRecords = [] if (!_.isEmpty(this.DataSource)) { //this.DataSource ==> undefined let startIndex = (this.options.page - 1) * this.options.sizePerPage let count = (this.options.page - 1) * this.options.sizePerPage + this.options.sizePerPage pageRecords = _.slice(this.DataSource, startIndex, count) } this.setState({ ...this.state, pageRecords: pageRecords, totalSize: this.DataSource.length }) } render() { ... //Render the records from this.state.pageRecords } }
将this.datasource
更改为组件状态,然后在测试用例中使用,Enzyme util setState function:。
wrapper.setState({ DataSource: 'somesource' });
例如,组件的componentWillReceiveProps方法如下所示:
componentWillReceiveProps(nextProps) {
this.setState({
DataSource: nextProps.recordArr,
});
this.parseProps()
}
我有以下组成部分: 现在我正在尝试编写一个单元测试来检查if条件(根据.to属性返回IndexLink或Link): 但我似乎无法测试函数的确切jsx返回,因为当我使用控制台时。记录我得到的其中一个返回: {$$typeof':Symbol(react.element),type:'div',key:'/',ref:null,props:{className:'navbar link contai
我正在尝试构建一个使用gradle作为构建工具和openjdk-11的原型。这个原型将在springboot框架上构建一个rest-api。 我的模块与rest api调用配合良好,并返回了预期结果。然而,当我现在试图为RESTAPI编写测试时,测试失败了,因为Mockito返回了空对象。如果您能了解我应该如何为这个rest api编写测试或如何修复它,我将不胜感激。 我的控制器: 服务: 模型:
问题内容: 我试图在我的项目中运行默认的服务单元测试(取自GitHub上的Angular Seed项目),但是我一直收到错误消息“模块未定义”。 我已经读到它可能与所引用的JavaScript文件的顺序有关,但是我似乎无法使其正常工作,因此希望你们中的一个能够提供帮助。 我的测试配置如下所示: basePath =’../’; 文件= [ ‘public / javascripts / lib /
问题内容: 我想测试以下使用api的类。 快速搜索没有发现任何执行此操作的示例。有人成功吗?我将如何嘲笑裁判? 理想情况下,我想使用。 更新资料 所以我可以使用回调引用进行测试,如下所示 然后测试类似 问题答案: 没有特定的例程可以测试参考。引用只是带有键的对象。 如果它是在早期访问的,则需要禁用生命周期挂钩进行测试。应该测试组件最初是否具有引用,然后可以对其进行模拟 由于ref作为prop传递给
问题内容: 我对如何在Mocha测试中包装嵌套的异步回调感到困惑。这是令人讨厌的代码示例:正在调用Amazon S3以检查文件是否存在: 代码挂起等待完成(如果我省略done())-或者,代码完成而没有回调,或者,节点抱怨done()被多次调用。 在下面的帮助下,我可以正常工作了,但看起来像是异步伏都炖菜 问题答案: 尝试使用async.serial。在第一个条目内,使用async.each运行多
问题内容: 因此,当我打开灯箱时,我试图禁止在页面上滚动,而我发现这个确实有用的脚本非常有用。不幸的是,当我在自己的页面上使用它时,它也禁止在灯箱中滚动。我开始用警报调试代码,只是发现该事件。wheelDelta在我的页面上返回“undefined”,而在JSFiddle中,它返回-120。 问题答案: jQuery事件处理程序中的对象不能反映真实事件。是IE和Opera的非标准事件属性,可通过j