Saya sedang mengusahakan projek dengan bootcamp kursus Pembangunan Web Front End dan malangnya profesor kami tidak dapat menjawab soalan saya ini.
Saya mempunyai permainan kad perang mudah yang mengambil dua pemain dan memainkannya selama 26 giliran untuk melihat siapa yang menang. Dalam permainan ini saya mempunyai 4 kelas seperti berikut
Ini disediakan sebagai modul supaya ia boleh dieksport dan kemudian diimport ke dalam mana-mana fail JS sepadan yang memerlukannya untuk dijalankan.
Saya kemudian mempunyai satu set fail ujian unit yang kemudiannya akan cuba menggunakan setiap fail yang sepadan dan kemudian menjana tests.html untuk ujian
Ini akan mengakses setiap fail js ujian unit yang sepadan dan kemudian menjalankannya melalui kaedah yang diterangkan. Walau bagaimanapun, mereka sebenarnya tidak menjalankan fungsi "ia" yang sepadan untuk ujian unit (ini disahkan oleh perihalan dan console.log() dalam fungsi it. Apabila saya cuba pergi ke konsol pada pelayar web, ia Juga lakukan ini tanpa membuang sebarang ralat untuk penyahpepijatan.
Pautan pertama adalah ke cawangan induk yang saya lakukan pada minggu ke-6, anda akan melihat bahawa ujian berfungsi apabila saya tidak mengimport dan kemudian mempunyai kelas yang sepadan dalam keterangan. https://github.com/jeffhennen/Projects/tree/master/Week6/Week6FinalSaya mahu ia menggunakan kod langsung dalam fail dan bukannya ujian unit, sambil memastikan setiap fail yang sepadan berasingan, seperti yang saya lakukan dalam bahagian ini. https://github.com/jeffhennen/Projects/tree/Test/Week6/Week6Final
Ini adalah ujian saya.html
<!DOCTYPE html> <html> <head> <link rel="stylesheet" href="node_modules/mocha/mocha.css"> </head> <body> <div id = "mocha"><p><a href=".">Index</a></p></div> <div id = "messages"></div> <div id = "fixtures"></div> <script src="node_modules/mocha/mocha.js"></script> <script src="node_modules/chai/chai.js"></script> <script type="module" src="Scripts/Card.js"></script> <script type="module" src="Scripts/Deck.js"></script> <script type="module" src="Scripts/Player.js"></script> <script type="module" src="Scripts/War.js"></script> <script>mocha.setup('bdd')</script> <script type="module" src="UnitTests/CardTest.js"></script> <script type="module" src="UnitTests/DeckTest.js"></script> <script type="module" src="UnitTests/PlayerTest.js"></script> <script>mocha.run();</script> </body> </html>Berikut ialah contoh fail CardTest.js saya
var expect = chai.expect; import Card from '../Scripts/Card.js'; describe('Card Functions', () => { describe('Constructor', () => { console.log("Inside card describe constructor"); let card = new Card("Club", "King", 13); console.log(card); it('Should create the card with the value of the card\'s suit equal to param 0', () => { console.log("test1"); expect(card._suit).to.equal("Club"); }); it('Should create the card with the value of the card\'s string value equal to the param 1', () => { console.log("test2"); expect(card._number).to.equal("King"); }); it('Should assign the numeric value of the card\'s string value to the card object', () => { console.log("test3"); expect(card._value).to.equal(13); }); }); });Ini ialah fail Card.js saya
class Card{ constructor(suit, number, value){ this._suit = suit; this._value = value; this._number = number; } get suit(){ return this._suit; } get value(){ return this._value; } get number(){ return this._number; } } export default Card;
Saya mendapati bahawa untuk menjalankannya, saya hanya perlu mengemas kini tests.html kepada yang berikut, saya hanya mengemas kini teg kepada