我正在使用SonarQube从我的应用程序显示代码覆盖率,并使用Coverlet收集代码覆盖率,并将这些发现发布到SonarQube仪表板。我的应用程序是一个dotnet应用程序。
我可以使用
**Here's my code:**
**//schema.js**
const { gql }=require('apollo-server-express');
const typeDefs = gql`
type User{
id:ID!
firstname:String!
lastname:String!
email:String!
password:String!
}
type LoginResponse{
ok:Boolean!
token:String!
}
type Query{
users:[User]
user(id:ID!):User
}
type Mutation{
loginUser(email:String!,password:String!):LoginResponse
}
`;
module.exports=typeDefs;
**//resolvers.js**
const jwt=require('jsonwebtoken');
const config=require('./confg');
const User=require('./models/User');
const resolvers={
Query:{
users:()=>{
return User.find();
},
user:(root,{id})=>{
return User.findById(id);
}
},
Mutation:{
loginUser:(parent,{email,password})=>{
User.find({email:email})
.then(
user=>{
if(user[0].password===password){
const mytoken=jwt.sign({
id:user[0]._id,
username:user[0].email
},config.jwtSecret);
const response={
ok:true,
token:mytoken
}
return response;
}
else{
return {
ok: false,
errors: [{ path: 'password', message: 'Wrong password' }],
};
}
})
.catch(err=>{
return {
ok: false,
errors: [{ path: 'email', message: 'Wrong email' }],
};
});
}
}
}
module.exports=resolvers;
可以从单元测试中收集测试覆盖率,并将其发布到SonarQube,但是,我在同一目录中有集成测试,我也想为同一覆盖率统计做出贡献。
这些集成测试位于目录myapplication / Tests / MyApplication.Tests.Integration / MyApplication.Tests.Integration.csproj
如何从这两个方面收集覆盖率统计信息,并将整体调查结果发布到覆盖率文档中。
注意,我正在使用基于Unix的操作系统。
对此将提供任何帮助。