我正在为DataAccessRepository类(使用实体框架)类编写测试用例。此类在构造函数中带有两个参数。1)连接对象2)自动映射器对象
现在,我在xunit中使用collectionFixture在测试类中传递DatabaseFixture,但是我还需要将AutoMapper Fixture传递给同一测试类。我尝试添加两个集合,一个接一个,但是无效。有人可以介绍一下如何在xunit的测试类上使用多个FixtureCollection吗?
我的单元测试类如下所示,并且由于无法在该类上使用两个CollectionFixture属性而引发错误,
`
[Collection(Traits.DatabaseFixtureCollection)]
[Collection(Traits.AutomapperFixtureCollection)]
public class MyAssessmentRepositoryTests
{
private readonly IMyAssessmentsRepository _Repo;
public MyAssessmentRepositoryTests(DatabaseFixture dbFixture,AutomapperFixture amFixture)
{
this._Repo = new MyAssessmentRepository(dbFixture.IcmDbContext,amFixture.Mapper);
}
}`
Run Code Online (Sandbox Code Playgroud) 我在 typeScript 和 Angular 2 中遇到问题。我的 TS 类如下所示,
'import { Component, OnInit } from '@angular/core';
import {ActivatedRoute} from '@angular/router';
@Component({
selector: 'app-blogdetail',
templateUrl: './blogdetail.component.html',
styleUrls: ['./blogdetail.component.css']
})
export class BlogdetailComponent implements OnInit {
blogId:any;
title:any;
constructor(private _activatedRoute:ActivatedRoute) {
//Does not work
// this.blogId = this._activatedRoute.snapshot.params['id'];
//this.title= `This is blog detail for blogID:${this.blogId}`;
}
ngOnInit() {
this.blogId = this._activatedRoute.snapshot.params['id'];
this.title= `This is blog detail for blogID:${this.blogId}`;
}
}'
Run Code Online (Sandbox Code Playgroud)
我必须在 ngOnit 事件中获取路由参数。当我最初在 TS 类构造函数中使用相同的代码(获取参数)时,我得到的 blogId 变量值为undefined。据我了解事件的顺序,它们类似于下图,![flow] https://i.stack.imgur.com/41fpe.png
我们是否必须始终获取 ngOnIt 中的activatedRoute快照值?