จะรันการทดสอบที่เขียนโดยใช้จัสมินสำหรับ typescript (เชิงมุม 2) ได้อย่างไร

ฉันได้เขียนการทดสอบหน่วยโดยใช้เฟรมเวิร์ก jasmine สำหรับแอปพลิเคชัน typescript เชิงมุม 2 ฉันยังไม่ได้สร้างโครงการโดยใช้ angular-cli ฉันติดตั้งจัสมินและเขียนการทดสอบหน่วยสำหรับส่วนประกอบเชิงมุม ฉันจะรัน spec.ts นี้ได้อย่างไร ฉันติดตาม https://github.com/jasmine/jasmine-npm แล้วลองกำหนดค่า โครงการของฉันเพื่อทำการทดสอบ แต่ใช้งานได้กับไฟล์ทดสอบ spec.js เท่านั้น ฉันพยายามด้วยกรรมแต่ไม่ได้ผล วิธีการตั้งค่าสภาพแวดล้อมการทดสอบเพื่อรันการทดสอบที่เขียนขึ้นสำหรับ typescript โดยใช้จัสมิน


person user2301    schedule 12.06.2017    source แหล่งที่มา
comment
รวบรวมให้เป็นจาวาสคริปต์   -  person Max Koretskyi    schedule 12.06.2017
comment
@Maximus เฟรมเวิร์กดอกมะลิไม่ได้คอมไพล์มันเป็นจาวาสคริปต์ใช่ไหม ฉันควรจะเขียนสคริปต์เพื่อมันเหรอ?   -  person user2301    schedule 12.06.2017
comment
ฉันได้เพิ่มคำตอบแล้ว ลองดูสิ   -  person Max Koretskyi    schedule 12.06.2017


คำตอบ (1)


หากต้องการให้ไฟล์ typescript ของคุณคอมไพล์เป็น javascript ให้ใช้ tsc คอมไพเลอร์ ติดตั้งโดยการรัน

$ npm i typescript
$ npm i typescript -g

และเริ่มต้น tsconfig.json:

$ tsc --init

ตอนนี้คุณสามารถคอมไพล์ไฟล์ของคุณเพียงแค่เรียกใช้ tsc ในไดเร็กทอรีโปรเจ็กต์

jasmine-npm ระบุว่าคุณควรรันการทดสอบโดยดำเนินการ jasmine ดังนั้นคุณสามารถเพิ่มสิ่งต่อไปนี้ใน package.json:

  "scripts": {
    "test": "tsc && jasmine"
  },

และดำเนินการทดสอบโดยเพียงแค่รัน:

$ npm test
person Max Koretskyi    schedule 12.06.2017
comment
ฉันพยายามแล้ว แต่ได้รับข้อผิดพลาดนี้หลังจากรวบรวม typescript เป็น javascript import { TestBed } from '@angular/core/testing'; SyntaxError: Unexpected token import - person user2301; 13.06.2017
comment
ฉันพบปัญหาเดียวกัน เพื่อแก้ไขให้แน่ใจว่าในโมดูล tsconfig.json: commonjs - person Steverob2k; 23.04.2019