テスト
すべてのエンティティとサービスに対する TestBox ユニットスペックに加え、実際の HTTP リクエストを扱う統合スペック。
このページ内
ใในใ
CBGenesis ใซใฏใใในใฆใฎใตใผใในใจใจใณใใฃใใฃใใซใใผใใ TestBox ในใคใผใใซๅ ใใๅฎ้ใฎใชใฏใจในใใๆฑใ็ตฑๅในใใใฏใๅๆขฑใใใฆใใพใใ
ใในใใฎๅฎ่ก
box testbox run # All tests
box testbox run directory=tests.specs.unit # Unit tests only
box testbox run directory=tests.specs.integration # Integration tests only
box testbox run bundles=tests.specs.unit.security.RoleServiceTest # One bundle
ใฉใณใใผ(tests/runner.bxmใbox.json ใฎ testbox.runner ใญใผใง้
็ทใใใฆใใพใ)ใฏ labels= ใจ excludes= ใๅใไปใใพใใใใใฎในใคใผใๅ
ใงใฉใใซใๅฎฃ่จใใฆใใในใใใฏใฏใชใใใใไปฃใใใซใใฃใฌใฏใใชใใใณใใซใงใใฃใซใฟใชใณใฐใใฆใใ ใใใ--verbose ใฏๅฎ่กใใใๅในใใใฏใๅบๅใใoutputFile=/outputFormats= ใฏใฌใใผใใๆธใๅบใใพใ - ใใใ CI ใฎๅผใณๅบใๆนใงใใ
ๅฎ้ใฎใชใฏใจในใใ็บ่กใใใใใไบๅใซ box server start ใ่ตทๅใใฆใใใใใผใฟใใผในใใใคใฐใฌใผใทใงใณใปใทใผใๆธใฟใงใใๅฟ
่ฆใใใใพใใCI ใฏ box testbox run ใฎๅใซใพใใซใใใ่กใใพใใ
ใในใๆง้
tests/
โโโ Application.bx Virtual ColdBox app (appMapping="/app")
โโโ runner.bxm TestBox CLI runner entry
โโโ run.bxm / index.bxm Browser-based runner UI
โโโ specs/
โ โโโ integration/
โ โ โโโ MainSpec.bx Lifecycle events and exception handling
โ โ โโโ AuthTest.bx Login, registration, and password reset
โ โ โโโ ProfileTest.bx Password change and profile validation
โ โ โโโ SettingsTest.bx Settings handler CRUD and registry
โ โโโ unit/
โ โโโ security/ APIToken, APITokenService, Permission,
โ โ PermissionService, RateLimitService,
โ โ RememberTokenService, Role, RoleService,
โ โ SecurityService
โ โโโ system/ AuditLog, AuditLogService, Setting,
โ SettingService, User, UserService
โโโ resources/
โโโ BaseIntegrationSpec.bx Shared helper for integration tests
ๅฝๅ่ฆๅใฏใใจใณใใฃใใฃใใจใซ 1 ใคใฎใฆใใใในใใใฏใใตใผใในใใจใซ 1 ใคใฎใฆใใใในใใใฏใงใใใกใคใณใใฉใซใใผ(securityใsystem)ใใจใซๅใใใฆใใพใ - app/models ใๅๆ ใใฆใใพใใ่ชๅใฎใใกใคใณใ่ฟฝๅ ใใใจใใๅใ็ตใฟๅใใใซๅพใฃใฆใใ ใใใใฉใณใใผใฏ *Spec*/*Test* ใจใใใใกใคใซๅใใฟใผใณใงใใณใใซใๆคๅบใใใใใใฉใกใใฎๆฅๅฐพ่พใงใๆฉ่ฝใใพใใ
็ตฑๅในใใใฏใฎๆธใๆน
็ตฑๅในใใใฏใฏ tests.resources.BaseIntegrationSpec ใ็ถๆฟใใฆใใใใใใฏ appMapping="/app" ใ้
็ทใใใใใใในใฏๆฌ็ช็ฐๅขใจใพใฃใใๅใใใใซ่งฃๆฑบใใใพใใ
component extends="tests.resources.BaseIntegrationSpec" {
function run(){
describe( "Registration", () => {
it( "renders the registration form", () => {
var event = execute( event = "Auth.register", renderResults = true );
expect( event.getValue( "cbox_rendered_content" ) ).toInclude( "register" );
} );
} );
}
}
ใในใฆใฎ็ตฑๅในใใใฏใง beforeEach() ๅ
ใง setup() ใๅผใณๅบใใใใใในใใฎ็ถๆ
ใๆฌกใฎใในใใซๆผใใชใใใใซใใฆใใ ใใใ
ใใงใใฏใคใณๆธใฟใฎในใคใผใใฏ 19 ใฎในใคใผใใซใใใ 185 ใฎในใใใฏ ใงใ: ใในใฆใฎใปใญใฅใชใใฃใปใทในใใ ใจใณใใฃใใฃใจใตใผใในใซๅฏพใใใฆใใใใซใใฌใใธใซๅ ใใใขใใชใฑใผใทใงใณใฎใฉใคใใตใคใฏใซ(MainSpec)ใ่ช่จผใใญใผ(AuthTest)ใใใญใใฃใผใซใใณใใฉใผ(ProfileTest)ใ่จญๅฎใใณใใฉใผ(SettingsTest)ใซๅฏพใใ็ตฑๅในใใใฏใงใใUsersใRolesใPermissionsใAuditLog ใฎ็ฎก็ใใณใใฉใผใซใคใใฆใฏใใพใ ็ตฑๅใซใใฌใใธใใใใพใใ - ใใใใฎไธใซๆง็ฏใใ้ใซ่ฟฝๅ ใใฆใใ ใใใใตใผใในใซใฆใใใในใใใฏใใใใใใจใใฃใฆใใใฎๆฉ่ฝใใซใใผใใใฆใใใจใฏ้ใใพใใใ