আমি জাস্ট টেস্ট চালাচ্ছি npm test
। জেস্ট ডিফল্টরূপে সমান্তরালে পরীক্ষা চালায়। পরীক্ষাটি ক্রমানুসারে চালানোর কোনও উপায় আছে কি?
আমার তৃতীয় পক্ষের কোডকে কল করার কিছু টেস্ট রয়েছে যা বর্তমান ওয়ার্কিং ডিরেক্টরিটি পরিবর্তনের উপর নির্ভর করে।
আমি জাস্ট টেস্ট চালাচ্ছি npm test
। জেস্ট ডিফল্টরূপে সমান্তরালে পরীক্ষা চালায়। পরীক্ষাটি ক্রমানুসারে চালানোর কোনও উপায় আছে কি?
আমার তৃতীয় পক্ষের কোডকে কল করার কিছু টেস্ট রয়েছে যা বর্তমান ওয়ার্কিং ডিরেক্টরিটি পরিবর্তনের উপর নির্ভর করে।
উত্তর:
সিএলআই বিকল্পগুলি ডকুমেন্টেড এবং কমান্ডটি চালিয়ে অ্যাক্সেসযোগ্য jest --help
।
আপনি বিকল্প আপনি খুঁজছেন দেখতে পাবেন: --runInBand
।
npm test -- --runInBand
সঠিক
আমি এখনও জেস্টের সাথে পরিচিত হয়েছি, তবে এটি প্রদর্শিত হয় যে ব্লকগুলি সিঙ্ক্রোনিকভাবে চালিত হয় যখন পরীক্ষার ব্লকগুলি অবিচ্ছিন্নভাবে চালিত হয়। আমি বহিরাগত বর্ণনার মধ্যে একাধিক বর্ণনা ব্লক চালাচ্ছি যা দেখতে এরকম কিছু দেখাচ্ছে:
describe
describe
test1
test2
describe
test3
এই ক্ষেত্রে, সম্পূর্ণ test3
না হওয়া পর্যন্ত চলবে না test2
কারণ test3
একটি বিবরণ ব্লকে রয়েছে যা বর্ণনামূলক ব্লককে অনুসরণ করে test2
।
এটি আমার পক্ষে মডিউল পরীক্ষাগুলিতে ভালভাবে বিচ্ছিন্নভাবে চলার বিষয়টি নিশ্চিত করার জন্য কাজ করেছিল:
1) পৃথক ফাইলগুলিতে পরীক্ষা রাখুন, তবে spec/test
নামকরণ ছাড়াই ।
|__testsToRunSequentially.test.js
|__tests
|__testSuite1.js
|__testSuite2.js
|__index.js
2) টেস্ট স্যুট সহ ফাইলটিও এর মতো দেখতে হবে (testSuite1.js):
export const testSuite1 = () => describe(/*your suite inside*/)
3) এগুলিতে আমদানি করুন testToRunSequentially.test.js
এবং এর সাথে চালান --runInBand
:
import { testSuite1, testSuite2 } from './tests'
describe('sequentially run tests', () => {
testSuite1()
testSuite2()
})
সিরিয়াল পরীক্ষা রানার ব্যবহার করুন:
npm install jest-serial-runner --save-dev
এটি ব্যবহারের জন্য ঠাট্টা সেট আপ করুন, যেমন jest.config.js এ:
module.exports = {
...,
runner: 'jest-serial-runner'
};
আপনি প্রকল্পের বৈশিষ্ট্যটি এটি কেবল পরীক্ষার উপসেটে প্রয়োগ করতে ব্যবহার করতে পারেন। Https://jestjs.io/docs/en/configration#projects-arraystring--projectconfig দেখুন
Https://github.com/facebook/jest/issues/6194#issuecomment-419837314 থেকে অনুলিপি করা হয়েছে
test.spec.js
import { signuptests } from './signup'
import { logintests } from './login'
describe('Signup', signuptests)
describe('Login', logintests)
signup.js
export const signuptests = () => {
it('Should have login elements', () => {});
it('Should Signup', () => {}});
}
login.js
export const logintests = () => {
it('Should Login', () => {}});
}
npm test --runInBand
? অফটপিক: "ব্যান্ড" নামটি কোথা থেকে এসেছে তা নিশ্চিত নয়। --runSequentially সম্ভবত আরও জ্ঞান তৈরি করবে :)