Files
taxbaik/test-output.log
kjh2064 3153d3c095 경로 최적화: PathBase 제거 및 상대 경로로 전환
## 변경사항
- Program.cs: app.UsePathBase('/taxbaik') 제거
- Blazor 컴포넌트: /taxbaik/admin/* → ./* 상대 경로로 변경
- 모든 내부 링크 절대 경로 → 상대 경로로 전환

## 현황
 빌드: 0 오류, 0 경고
 헬스체크: HTTP 200
 로그인 페이지: 로드 정상
 로그인 API: 400 오류 (DB 오류 - 조사 중)

## 다음 단계
- LoginEndpoint에서 발생하는 DB 오류 원인 파악 필요
- Razor Pages 절대 경로도 상대 경로로 변경 (보류 중)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-08 15:00:23 +09:00

394 KiB

 
> test:e2e
> playwright test --reporter=list
 
 
Running 156 tests using 8 workers
 
- 3 [Desktop Chrome] › tests\e2e\admin-password-change.spec.ts:10:7 › admin password change › changes password through the real admin UI
Username filled: true, Password filled: true
 
=== 1단계: 로그인 페이지 이동 ===
✓ 페이지 로드: 관리자 로그인
 
=== 2단계: 로그인 수행 ===
[Browser Console] [error] Error in mono_download_assets: Error: download 'http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.y2d70ja2cw.wasm' for System.Runtime.InteropServices.y2d70ja2cw.wasm failed 0 TypeError: Failed to fetch
[Browser Console] [error] Error in mono_download_assets: Error: download 'http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.y2d70ja2cw.wasm' for System.Runtime.InteropServices.y2d70ja2cw.wasm failed 0 TypeError: Failed to fetch
✓ Logged in and redirected to dashboard
BAD HTTP: 400 http://localhost:5001/taxbaik/api/auth/login
CONSOLE: error Failed to load resource: the server responded with a status of 400 (Bad Request)
localStorage has accessToken: true
Current URL after login: http://localhost:5001/taxbaik/admin/dashboard
Network requests: [{"url":"http://localhost:5001/taxbaik/admin/login","status":200},{"url":"http://localhost:5001/taxbaik/admin/login","status":200},{"url":"http://localhost:5001/taxbaik/admin/dashboard","status":200},{"url":"http://localhost:5001/taxbaik/admin/js/admin-session.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/blazor.webassembly.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/css/admin.css","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_content/Microsoft.DotNet.HotReload.WebAssembly.Browser/Microsoft.DotNet.HotReload.WebAssembly.Browser.99zm1jdh75.lib.module.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.native.2qba9g5fwn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.JavaScript.0uujcsvtme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/FluentValidation.fvee6lf8f0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Authorization.wp5b4xwrtz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Application.nk6b00sehx.pdb","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.runtime.o0qy896u8v.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.native.xanz2e7ksm.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Forms.ec8b0m8vzy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Authorization.qjl31ej8ln.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.4payhwuyuh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Web.j6d7zpk03e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.CoreLib.8ubjv9s18t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Metadata.bhaqktdl3q.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.WebAssembly.jt9rzx6tc4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Domain.slcej1gg8j.pdb","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.DotNet.HotReload.WebAssembly.Browser.ttbwk6q8rt.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.s6epnzhbd8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Abstractions.wa2ojg94fi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Binder.l7o5knh4f1.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.FileExtensions.ke1t9ns7xl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Bcl.Cryptography.3pa69hqvhn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Json.k1hilos7yb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.DependencyInjection.nun950pku8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.DependencyInjection.Abstractions.q6idsb19uh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Diagnostics.f7zn8s1thp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Caching.Abstractions.vvlexwbaez.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Diagnostics.Abstractions.s62vewhs76.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileProviders.Abstractions.woov9lkdcy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileSystemGlobbing.jnewm5d55t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Http.0emfrzn4z9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileProviders.Physical.4uvrzrkcx9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Localization.Abstractions.pyaf3dbk0g.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Logging.Abstractions.62zefycurg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Logging.xispqyz68y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Options.bs7sofzszu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Localization.5atztr4g6x.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Options.ConfigurationExtensions.i2sp1sqcbf.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Primitives.ub9q6nskn2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Validation.y25xlv978u.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Abstractions.psm3y4qcdp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.JsonWebTokens.n0dq0d579y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Logging.r9vixnozb0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.JSInterop.zhfbg74p0e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IdentityModel.Tokens.Jwt.3z2p0190ll.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.CSharp.j06echzfpz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.JSInterop.WebAssembly.vi1uw8swyy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.VisualBasic.r1r1o64guk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/MudBlazor.d6wkksyg7d.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Tokens.re3chwnju5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Win32.Primitives.5nko60lje3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.VisualBasic.Core.h2kvac5o7p.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.AppContext.c2z2iszv5a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Win32.Registry.lmhf2szmg9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Buffers.jv7wyzqgeh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Concurrent.qyjrh4n7wg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Immutable.6nfqc1y6mx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.NonGeneric.oye06xq4bj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.4u69gysy90.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Specialized.ua3ga4ojzm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.Annotations.fu60omoy5j.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.EventBasedAsync.6se1ltc450.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.DataAnnotations.b05dlz1h33.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.Primitives.lzg3p2fcb8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.u8ypsaemfu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Configuration.gkfiw2lgu6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.TypeConverter.pua8doket6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Core.lhxt5qhoq6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.Common.eqtn3ssyme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Console.p023t1evip.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Contracts.dck23rphvl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.d0h61hksxr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Debug.xp56ua2jd2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.DataSetExtensions.zp6ucti1as.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.FileVersionInfo.8kwccfatn9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.DiagnosticSource.kzyp7dz13i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Process.pbsvhgaqld.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.TextWriterTraceListener.f9a4ca75f9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.StackTrace.uosmk512ff.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Tools.r58uhp06u4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Tracing.uyjvspoaee.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Drawing.nem9gi6fos.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Formats.Asn1.9bedxuqoe2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Dynamic.Runtime.4xdpjnpw4n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Formats.Tar.hjwgs8goh9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.de5yfe377i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.Calendars.qqu4d9h6d4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.Extensions.1d3dstrmml.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.TraceSource.74aa6mybdk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Drawing.Primitives.ygagw4cllm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.DriveInfo.0o22a9akm7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.mbpybl62de.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.Brotli.s6yhzy6ra0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.ZipFile.5ulbwi9soi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.AccessControl.olg38ln9cn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.Watcher.b81ylq3lid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.m0wrikzu53.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.Primitives.efika37m4r.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.MemoryMappedFiles.1qwcduyngl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.IsolatedStorage.moxgx46g2v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipelines.8cw6ik4s41.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.FileSystem.8e8pwcj0r8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.UnmanagedMemoryStream.09whssgw8a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipes.AccessControl.yejz5yzur4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.lavhpdycer.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.AsyncEnumerable.a9leffpn15.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Expressions.r1c6atm1cw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Parallel.g7xw2v7b07.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipes.aovxgtgqh6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Queryable.sdb7n2mhn5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.rskygq9p37.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Memory.i4ezuafn9k.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Http.Json.zy8lvi4mlm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Http.c5n0c1iaa3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.HttpListener.bzgrr803nf.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Mail.tbh6kodhoc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.NetworkInformation.6lqpzaxhm8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.NameResolution.97kbgrqa3x.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Ping.8imioclqo5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Primitives.06opecf70b.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Quic.m8fkmwx2e2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Security.7zwmva046j.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.ServerSentEvents.c4uhw1iihb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Sockets.3pbfy2myku.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebClient.0vydlgc6dw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.ServicePoint.jysyz6pe5n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebProxy.zmhtx343lv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebHeaderCollection.7o9dkw6pk7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Requests.r215bg21jb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebSockets.Client.2f3nip0afr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebSockets.gm6qkoxxpi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Numerics.ig9uomhcbs.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ObjectModel.snprhmugxx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Numerics.Vectors.95xmo86x7v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.4qaklzza4n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.DispatchProxy.upd872z9tl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.DataContractSerialization.gjeod45zn6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Xml.Linq.lr5v2oiugs.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Xml.wtrgu5mtlc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Uri.z6jswaywn8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Extensions.sognfb51go.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.mrh9tkt04t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Metadata.4temtjmiid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Primitives.rla5yzpm68.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.ILGeneration.g7zocluvg9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.Lightweight.dg35e9lw3s.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.d59jdh5una.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.TypeExtensions.eziqyy81b1.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.ResourceManager.78ixpnkxwz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.Reader.42xaf3wy3o.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.Writer.j5qafotg8o.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.CompilerServices.Unsafe.4s8vka7mb8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Extensions.x9isqqr7mp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.RuntimeInformation.zydo3g4f27.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.CompilerServices.VisualC.7dilrkv0n5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Handles.gmejdz8b1i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.y2d70ja2cw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Formatters.kp04s3jyn3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Loader.3t71kb21wu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Intrinsics.kmq2apj5l0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Numerics.n8gwbfvruj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Primitives.ktqshul6zq.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.csube7l7j7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.AccessControl.l725whzq2q.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Json.w5ytzloqtn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Xml.zxalj6oi7a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.oqtdyhn9ex.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Algorithms.xptci9gx2e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Encoding.mjrnxqi695.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Csp.dh1ommb4jg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Claims.ls4mvh9izv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Cng.cwmo3bkk7r.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Primitives.3u8l6vjobk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.OpenSsl.bwa2csm6hl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.X509Certificates.ha8unomn85.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.k3w9v7ue50.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Principal.Windows.xecxe1aqkj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Principal.60u8ec2sxl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.SecureString.eim2t43py4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ServiceProcess.isfmih530m.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.n9s9f533o4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ServiceModel.Web.0gnfditp44.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.CodePages.uujl0fau9d.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.Extensions.mr1rkcnv13.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.g0sgi8atoh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encodings.Web.mb9atwjqsn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Json.hphxl2km4u.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.RegularExpressions.6a9cxw2dq7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.AccessControl.m54ktoxm2s.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Dataflow.tnzumxbiut.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Overlapped.jgaekt0s0k.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Channels.v1qpu5ozcz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Extensions.abjpbegqw7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Parallel.uopu4j1ll0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.f8ooi2bwxq.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Timer.n7hcp5usgn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.ThreadPool.sqmy5jnljd.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Thread.icdc9s98z0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Transactions.vnrbvecmwd.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Transactions.Local.q4k65jbhaz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.nxaopq8r9v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Windows.brg453rzbv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ValueTuple.6b0gmpb390.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.ReaderWriter.91p1gp9557.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Web.HttpUtility.cxyvb282ci.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Web.aeo7nmvkid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.Linq.nmrhj7elbr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.Serialization.ckvc8z5y7y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XmlDocument.kp4g8oyokz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XPath.mto1j3qx1a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XmlSerializer.1mt75y9wos.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XDocument.yqi6lt4nme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XPath.XDocument.3ukl29h35t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.5s4754zdrc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/mscorlib.d4fuuhbiqe.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Application.b8m3bwj182.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.802vhulao5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/netstandard.qwxk4mrnbx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Domain.7nnvbd3g2t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/icudt_EFIGS.tptq2av103.dat","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Web.Client.4m5ta01x14.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/WindowsBase.8yv9o2iuhl.wasm","status":200}]
[Browser Console] [info] Debugging hotkey: Shift+Alt+D (when application has focus)
✓ 6 [Desktop Chrome] › tests\e2e\admin-smoke.spec.ts:10:7 › admin smoke › @smoke logs in and lands on dashboard without circuit errors (22.0s)
✓ 10 [Desktop Chrome] › tests\e2e\contact-submit.spec.ts:9:7 › contact submit › creates an inquiry through the public API (708ms)
✘ 9 [Desktop Chrome] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation (19.9s)
✘ 1 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button (30.9s)
- 13 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:28:7 › admin CRM pages › TaxFilingSchedules page loads with D-day tracking
- 14 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:38:7 › admin CRM pages › Contracts page loads with MRR display
- 15 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:48:7 › admin CRM pages › ConsultingActivities page loads with activity records
- 16 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:58:7 › admin CRM pages › RevenueTrackings page loads with payment status tracking
- 17 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:68:7 › admin CRM pages › CRM navigation group is visible and expandable
- 18 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:90:7 › admin CRM pages › TaxProfiles editor panel is visible on add button click
- 19 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:99:7 › admin CRM pages › No console errors on CRM page navigation
- 20 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:131:7 › admin CRM pages › TaxProfiles form displays valid business type combo choices
- 21 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:155:7 › admin CRM pages › TaxFilingSchedules form displays filing type combo choices
- 22 [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:178:7 › admin CRM pages › Contracts form displays service type combo choices
✓ Blog list page loaded
✓ Blog CRUD flow complete
✘ 7 [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports (41.3s)
✓ 5 [Desktop Chrome] › tests\e2e\blog-crud.spec.ts:9:7 › blog CRUD operations › complete blog creation, read, update, delete flow (44.8s)
=== 1단계: 홈페이지 접속 ===
✘ 12 [Desktop Chrome] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics (10.0s)
✓ 홈페이지 로드됨
✓ 페이지 제목: 백원숙 세무회계 | 부가가치세 1기 확정신고 — 지금 상담하세요
 
=== 2단계: 로그인 페이지 이동 ===
✓ 로그인 페이지 접속
 
=== 3단계: 로그인 수행 ===
✓ 입력: admin
 
=== 4단계: 대시보드 확인 ===
✓ 대시보드 URL 도착
✓ 로그아웃 버튼 표시 (인증 완료)
✘ 11 [Desktop Chrome] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list (32.2s)
🔐 Logging in...
✓ 26 [Desktop Chrome] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message (3.4s)
✘ 27 [Desktop Chrome] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly (4.3s)
✘ 29 [Desktop Chrome] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics (2.6s)
✘ 2 [Desktop Chrome] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard (1.3m)
✓ 30 [Desktop Chrome] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app (2.4s)
✘ 32 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button (8ms)
- 33 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:28:7 › admin CRM pages › TaxFilingSchedules page loads with D-day tracking
- 34 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:38:7 › admin CRM pages › Contracts page loads with MRR display
- 35 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:48:7 › admin CRM pages › ConsultingActivities page loads with activity records
- 36 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:58:7 › admin CRM pages › RevenueTrackings page loads with payment status tracking
- 37 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:68:7 › admin CRM pages › CRM navigation group is visible and expandable
- 38 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:90:7 › admin CRM pages › TaxProfiles editor panel is visible on add button click
- 39 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:99:7 › admin CRM pages › No console errors on CRM page navigation
- 40 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:131:7 › admin CRM pages › TaxProfiles form displays valid business type combo choices
- 41 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:155:7 › admin CRM pages › TaxFilingSchedules form displays filing type combo choices
- 42 [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:178:7 › admin CRM pages › Contracts form displays service type combo choices
✓ 31 [Desktop Chrome] › tests\e2e\route-isolation.spec.ts:14:7 › route isolation › admin login boots the admin app under the admin base path (976ms)
✘ 24 [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile (35.0s)
✘ 43 [iPhone 12] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard (10ms)
✘ 44 [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads (6ms)
✘ 45 [iPhone 12] › tests\e2e\admin-password-change.spec.ts:10:7 › admin password change › changes password through the real admin UI (9ms)
✘ 47 [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads (14ms)
✘ 48 [iPhone 12] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports (10ms)
✘ 49 [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads (21ms)
✘ 4 [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads (1.5m)
✘ 50 [iPhone 12] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile (6ms)
✘ 8 [Desktop Chrome] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages (1.6m)
✘ 51 [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads (8ms)
✘ 53 [iPhone 12] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile (11ms)
✘ 54 [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load (9ms)
✘ 55 [iPhone 12] › tests\e2e\admin-smoke.spec.ts:10:7 › admin smoke › @smoke logs in and lands on dashboard without circuit errors (11ms)
✘ 56 [iPhone 12] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports (9ms)
✘ 57 [iPhone 12] › tests\e2e\blog-crud.spec.ts:9:7 › blog CRUD operations › complete blog creation, read, update, delete flow (9ms)
✘ 58 [iPhone 12] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages (8ms)
✘ 59 [iPhone 12] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation (9ms)
✘ 61 [iPhone 12] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics (8ms)
✓ 60 [iPhone 12] › tests\e2e\contact-submit.spec.ts:9:7 › contact submit › creates an inquiry through the public API (400ms)
✘ 62 [iPhone 12] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list (4ms)
✘ 63 [iPhone 12] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly (10ms)
✘ 64 [iPhone 12] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD (10ms)
✘ 65 [iPhone 12] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message (10ms)
✘ 66 [iPhone 12] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links (13ms)
✘ 67 [iPhone 12] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs (193ms)
✘ 68 [iPhone 12] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics (12ms)
✘ 69 [iPhone 12] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app (10ms)
✘ 70 [iPhone 12] › tests\e2e\login-test.spec.ts:23:5 › Admin Login Page - Full Flow Test (12ms)
✘ 72 [iPhone 12] › tests\e2e\route-isolation.spec.ts:14:7 › route isolation › admin login boots the admin app under the admin base path (30ms)
✘ 46 [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile (34.7s)
Username filled: true, Password filled: true
localStorage has accessToken: true
Current URL after login: http://localhost:5001/taxbaik/admin/dashboard
Network requests: [{"url":"http://localhost:5001/taxbaik/admin/login","status":200},{"url":"http://localhost:5001/taxbaik/admin/login","status":200},{"url":"http://localhost:5001/taxbaik/admin/dashboard","status":200},{"url":"http://localhost:5001/taxbaik/admin/css/admin.css","status":200},{"url":"http://localhost:5001/taxbaik/admin/js/admin-session.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/blazor.webassembly.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_content/Microsoft.DotNet.HotReload.WebAssembly.Browser/Microsoft.DotNet.HotReload.WebAssembly.Browser.99zm1jdh75.lib.module.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.native.2qba9g5fwn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.runtime.o0qy896u8v.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.native.xanz2e7ksm.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.JavaScript.0uujcsvtme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Application.nk6b00sehx.pdb","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/FluentValidation.fvee6lf8f0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Domain.slcej1gg8j.pdb","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.CoreLib.8ubjv9s18t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Authorization.wp5b4xwrtz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.4payhwuyuh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Authorization.qjl31ej8ln.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Forms.ec8b0m8vzy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Web.j6d7zpk03e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.WebAssembly.jt9rzx6tc4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Bcl.Cryptography.3pa69hqvhn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.DotNet.HotReload.WebAssembly.Browser.ttbwk6q8rt.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Metadata.bhaqktdl3q.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Caching.Abstractions.vvlexwbaez.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.s6epnzhbd8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Abstractions.wa2ojg94fi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Binder.l7o5knh4f1.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Json.k1hilos7yb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.FileExtensions.ke1t9ns7xl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.DependencyInjection.nun950pku8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.DependencyInjection.Abstractions.q6idsb19uh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Diagnostics.Abstractions.s62vewhs76.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Diagnostics.f7zn8s1thp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileProviders.Abstractions.woov9lkdcy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileProviders.Physical.4uvrzrkcx9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileSystemGlobbing.jnewm5d55t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Localization.5atztr4g6x.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Localization.Abstractions.pyaf3dbk0g.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Http.0emfrzn4z9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Logging.xispqyz68y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Options.bs7sofzszu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Logging.Abstractions.62zefycurg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Validation.y25xlv978u.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Abstractions.psm3y4qcdp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.JsonWebTokens.n0dq0d579y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Options.ConfigurationExtensions.i2sp1sqcbf.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Tokens.re3chwnju5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Primitives.ub9q6nskn2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.JSInterop.zhfbg74p0e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Logging.r9vixnozb0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.JSInterop.WebAssembly.vi1uw8swyy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IdentityModel.Tokens.Jwt.3z2p0190ll.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.CSharp.j06echzfpz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.VisualBasic.Core.h2kvac5o7p.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.VisualBasic.r1r1o64guk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Win32.Primitives.5nko60lje3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Win32.Registry.lmhf2szmg9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.AppContext.c2z2iszv5a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Buffers.jv7wyzqgeh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Concurrent.qyjrh4n7wg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Immutable.6nfqc1y6mx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.NonGeneric.oye06xq4bj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Specialized.ua3ga4ojzm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.4u69gysy90.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.Annotations.fu60omoy5j.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.DataAnnotations.b05dlz1h33.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.EventBasedAsync.6se1ltc450.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/MudBlazor.d6wkksyg7d.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.Primitives.lzg3p2fcb8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.u8ypsaemfu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.TypeConverter.pua8doket6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Console.p023t1evip.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Configuration.gkfiw2lgu6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Core.lhxt5qhoq6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.DataSetExtensions.zp6ucti1as.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.d0h61hksxr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Contracts.dck23rphvl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Debug.xp56ua2jd2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.Common.eqtn3ssyme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.FileVersionInfo.8kwccfatn9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Process.pbsvhgaqld.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.DiagnosticSource.kzyp7dz13i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.TextWriterTraceListener.f9a4ca75f9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Tools.r58uhp06u4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.StackTrace.uosmk512ff.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.TraceSource.74aa6mybdk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Drawing.nem9gi6fos.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Drawing.Primitives.ygagw4cllm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Dynamic.Runtime.4xdpjnpw4n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Formats.Asn1.9bedxuqoe2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Tracing.uyjvspoaee.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.Calendars.qqu4d9h6d4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Formats.Tar.hjwgs8goh9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.de5yfe377i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.Brotli.s6yhzy6ra0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.Extensions.1d3dstrmml.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.ZipFile.5ulbwi9soi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.mbpybl62de.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.FileSystem.8e8pwcj0r8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.DriveInfo.0o22a9akm7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.Primitives.efika37m4r.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.Watcher.b81ylq3lid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.AccessControl.olg38ln9cn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.m0wrikzu53.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.IsolatedStorage.moxgx46g2v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.MemoryMappedFiles.1qwcduyngl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipelines.8cw6ik4s41.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipes.AccessControl.yejz5yzur4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipes.aovxgtgqh6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.UnmanagedMemoryStream.09whssgw8a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.lavhpdycer.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Parallel.g7xw2v7b07.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Expressions.r1c6atm1cw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Queryable.sdb7n2mhn5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.AsyncEnumerable.a9leffpn15.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.rskygq9p37.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Memory.i4ezuafn9k.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Http.Json.zy8lvi4mlm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.HttpListener.bzgrr803nf.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Http.c5n0c1iaa3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.NameResolution.97kbgrqa3x.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.NetworkInformation.6lqpzaxhm8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Mail.tbh6kodhoc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Quic.m8fkmwx2e2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Ping.8imioclqo5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Requests.r215bg21jb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Primitives.06opecf70b.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Security.7zwmva046j.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.ServicePoint.jysyz6pe5n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Sockets.3pbfy2myku.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.ServerSentEvents.c4uhw1iihb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebClient.0vydlgc6dw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebHeaderCollection.7o9dkw6pk7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebProxy.zmhtx343lv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebSockets.Client.2f3nip0afr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebSockets.gm6qkoxxpi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.4qaklzza4n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Numerics.Vectors.95xmo86x7v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Numerics.ig9uomhcbs.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.DataContractSerialization.gjeod45zn6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Uri.z6jswaywn8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ObjectModel.snprhmugxx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.DispatchProxy.upd872z9tl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Xml.Linq.lr5v2oiugs.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.ILGeneration.g7zocluvg9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Xml.wtrgu5mtlc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.Lightweight.dg35e9lw3s.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.mrh9tkt04t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Extensions.sognfb51go.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Primitives.rla5yzpm68.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Metadata.4temtjmiid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.TypeExtensions.eziqyy81b1.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.d59jdh5una.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.Reader.42xaf3wy3o.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.ResourceManager.78ixpnkxwz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.Writer.j5qafotg8o.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.CompilerServices.Unsafe.4s8vka7mb8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.CompilerServices.VisualC.7dilrkv0n5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Extensions.x9isqqr7mp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Handles.gmejdz8b1i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.RuntimeInformation.zydo3g4f27.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.y2d70ja2cw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Intrinsics.kmq2apj5l0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Numerics.n8gwbfvruj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Loader.3t71kb21wu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Formatters.kp04s3jyn3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Primitives.ktqshul6zq.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Json.w5ytzloqtn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Xml.zxalj6oi7a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.oqtdyhn9ex.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.csube7l7j7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.AccessControl.l725whzq2q.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Claims.ls4mvh9izv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Algorithms.xptci9gx2e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Cng.cwmo3bkk7r.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Csp.dh1ommb4jg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Encoding.mjrnxqi695.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.OpenSsl.bwa2csm6hl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Primitives.3u8l6vjobk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.X509Certificates.ha8unomn85.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Principal.60u8ec2sxl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Principal.Windows.xecxe1aqkj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.SecureString.eim2t43py4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.k3w9v7ue50.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.n9s9f533o4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ServiceModel.Web.0gnfditp44.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ServiceProcess.isfmih530m.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.Extensions.mr1rkcnv13.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.g0sgi8atoh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encodings.Web.mb9atwjqsn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Json.hphxl2km4u.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.RegularExpressions.6a9cxw2dq7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.AccessControl.m54ktoxm2s.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.CodePages.uujl0fau9d.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Channels.v1qpu5ozcz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Overlapped.jgaekt0s0k.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Dataflow.tnzumxbiut.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Extensions.abjpbegqw7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Parallel.uopu4j1ll0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.f8ooi2bwxq.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.ThreadPool.sqmy5jnljd.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Thread.icdc9s98z0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.nxaopq8r9v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Timer.n7hcp5usgn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Transactions.Local.q4k65jbhaz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Transactions.vnrbvecmwd.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ValueTuple.6b0gmpb390.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Web.HttpUtility.cxyvb282ci.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Web.aeo7nmvkid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Windows.brg453rzbv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.Linq.nmrhj7elbr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.Serialization.ckvc8z5y7y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.ReaderWriter.91p1gp9557.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XDocument.yqi6lt4nme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XPath.XDocument.3ukl29h35t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XPath.mto1j3qx1a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XmlDocument.kp4g8oyokz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XmlSerializer.1mt75y9wos.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.5s4754zdrc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/WindowsBase.8yv9o2iuhl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.802vhulao5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/mscorlib.d4fuuhbiqe.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/netstandard.qwxk4mrnbx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Application.b8m3bwj182.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Domain.7nnvbd3g2t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/icudt_EFIGS.tptq2av103.dat","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Web.Client.4m5ta01x14.wasm","status":200}]
✘ 71 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button (16.6s)
- 76 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:28:7 › admin CRM pages › TaxFilingSchedules page loads with D-day tracking
- 77 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:38:7 › admin CRM pages › Contracts page loads with MRR display
- 78 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:48:7 › admin CRM pages › ConsultingActivities page loads with activity records
- 79 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:58:7 › admin CRM pages › RevenueTrackings page loads with payment status tracking
- 80 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:68:7 › admin CRM pages › CRM navigation group is visible and expandable
- 81 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:90:7 › admin CRM pages › TaxProfiles editor panel is visible on add button click
- 82 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:99:7 › admin CRM pages › No console errors on CRM page navigation
- 83 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:131:7 › admin CRM pages › TaxProfiles form displays valid business type combo choices
- 84 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:155:7 › admin CRM pages › TaxFilingSchedules form displays filing type combo choices
- 85 [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:178:7 › admin CRM pages › Contracts form displays service type combo choices
- 86 [iPad Pro] › tests\e2e\admin-password-change.spec.ts:10:7 › admin password change › changes password through the real admin UI
[Browser Console] [info] Debugging hotkey: Shift+Alt+D (when application has focus)
[Browser Console] [info] Debugging hotkey: Shift+Alt+D (when application has focus)
✘ 25 [Desktop Chrome] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links (1.7m)
✓ 88 [iPad Pro] › tests\e2e\admin-smoke.spec.ts:10:7 › admin smoke › @smoke logs in and lands on dashboard without circuit errors (5.2s)
✘ 75 [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports (35.2s)
✓ Logged in and redirected to dashboard
✘ 87 [iPad Pro] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports (34.0s)
✘ 73 [iPad Pro] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard (1.1m)
 
=== 1단계: 로그인 페이지 이동 ===
✓ 페이지 로드: 관리자 로그인
 
=== 2단계: 로그인 수행 ===
✓ Blog list page loaded
✓ Blog CRUD flow complete
BAD HTTP: 400 http://localhost:5001/taxbaik/api/auth/login
CONSOLE: error Failed to load resource: the server responded with a status of 400 (Bad Request)
✓ 89 [iPad Pro] › tests\e2e\blog-crud.spec.ts:9:7 › blog CRUD operations › complete blog creation, read, update, delete flow (39.6s)
✘ 92 [iPad Pro] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation (5.1s)
✓ 93 [iPad Pro] › tests\e2e\contact-submit.spec.ts:9:7 › contact submit › creates an inquiry through the public API (394ms)
✘ 91 [iPad Pro] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile (34.7s)
✘ 74 [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads (1.5m)
✘ 95 [iPad Pro] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics (13.5s)
🔐 Logging in...
✘ 94 [iPad Pro] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list (29.2s)
✘ 98 [iPad Pro] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly (4.8s)
=== 1단계: 홈페이지 접속 ===
✓ 99 [iPad Pro] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message (3.8s)
✓ 홈페이지 로드됨
✓ 페이지 제목: 백원숙 세무회계 | 부가가치세 1기 확정신고 — 지금 상담하세요
 
=== 2단계: 로그인 페이지 이동 ===
✓ 로그인 페이지 접속
 
=== 3단계: 로그인 수행 ===
✓ 입력: admin
 
=== 4단계: 대시보드 확인 ===
✓ 대시보드 URL 도착
✘ 28 [Desktop Chrome] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs (92ms)
✓ 로그아웃 버튼 표시 (인증 완료)
 
=== 1단계: 로그인 페이지 방문 ===
✘ 96 [iPad Pro] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile (35.4s)
✅ 페이지 제목: 관리자 로그인
✅ 페이지 길이: 8797 바이트
 
=== 2단계: 로그인 필드 확인 ===
✅ 사용자명 필드: 보임 ✨
✅ 비밀번호 필드: 보임 ✨
✅ 로그인 버튼: 보임 ✨
 
=== 3단계: 로그인 입력 & 제출 ===
✅ 사용자명 입력: admin
✅ 비밀번호 입력: ••••••••
✅ 로그인 버튼 클릭
 
=== 4단계: 로그인 결과 대기 ===
✘ 90 [iPad Pro] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages (1.5m)
✘ 23 [Desktop Chrome] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD (35.8s)
✘ 104 [iPad Pro] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs (142ms)
⚠️ 네비게이션 타임아웃 (이미 로그인됨 또는 리다이렉트 중)
✅ 최종 URL: http://localhost:5001/taxbaik/admin/login
✅ 로그인 성공! 대시보드로 이동됨
 
=== 5단계: 스크린샷 ===
✅ 증빙 저장
 
=== 🎯 테스트 결과 ===
✅ 페이지 로드: 성공
✅ 사용자명 필드: 렌더링됨
✅ 비밀번호 필드: 렌더링됨
✅ 로그인 버튼: 렌더링됨
✓ 102 [Desktop Chrome] › tests\e2e\login-test.spec.ts:23:5 › Admin Login Page - Full Flow Test (19.9s)
 
=== 1단계: 로그인 페이지 방문 ===
✅ 페이지 제목: 관리자 로그인
✅ 페이지 길이: 8797 바이트
 
=== 2단계: 로그인 필드 확인 ===
✅ 사용자명 필드: 보임 ✨
✅ 비밀번호 필드: 보임 ✨
✅ 로그인 버튼: 보임 ✨
 
=== 3단계: 로그인 입력 & 제출 ===
✅ 사용자명 입력: admin
✅ 비밀번호 입력: ••••••••
✅ 로그인 버튼 클릭
 
=== 4단계: 로그인 결과 대기 ===
✘ 100 [iPad Pro] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD (39.3s)
✓ 107 [iPad Pro] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app (5.4s)
✘ 52 [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads (3.0m)
⚠️ 네비게이션 타임아웃 (이미 로그인됨 또는 리다이렉트 중)
✅ 최종 URL: http://localhost:5001/taxbaik/admin/login
✅ 로그인 성공! 대시보드로 이동됨
 
=== 5단계: 스크린샷 ===
✅ 증빙 저장
 
=== 🎯 테스트 결과 ===
✅ 페이지 로드: 성공
✅ 사용자명 필드: 렌더링됨
✅ 비밀번호 필드: 렌더링됨
✅ 로그인 버튼: 렌더링됨
✓ 108 [iPad Pro] › tests\e2e\route-isolation.spec.ts:14:7 › route isolation › admin login boots the admin app under the admin base path (1.7s)
✘ 103 [iPad Pro] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports (35.0s)
✓ 106 [iPad Pro] › tests\e2e\login-test.spec.ts:23:5 › Admin Login Page - Full Flow Test (21.2s)
- 112 [Galaxy S9+] › tests\e2e\admin-password-change.spec.ts:10:7 › admin password change › changes password through the real admin UI
Username filled: true, Password filled: true
[Browser Console] [info] Debugging hotkey: Shift+Alt+D (when application has focus)
localStorage has accessToken: true
Current URL after login: http://localhost:5001/taxbaik/admin/dashboard
Network requests: [{"url":"http://localhost:5001/taxbaik/admin/login","status":200},{"url":"http://localhost:5001/taxbaik/admin/login","status":200},{"url":"http://localhost:5001/taxbaik/admin/dashboard","status":200},{"url":"http://localhost:5001/taxbaik/admin/css/admin.css","status":200},{"url":"http://localhost:5001/taxbaik/admin/js/admin-session.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/blazor.webassembly.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_content/Microsoft.DotNet.HotReload.WebAssembly.Browser/Microsoft.DotNet.HotReload.WebAssembly.Browser.99zm1jdh75.lib.module.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.native.2qba9g5fwn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.native.xanz2e7ksm.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/dotnet.runtime.o0qy896u8v.js","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.JavaScript.0uujcsvtme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Application.nk6b00sehx.pdb","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Authorization.wp5b4xwrtz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/FluentValidation.fvee6lf8f0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Domain.slcej1gg8j.pdb","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.CoreLib.8ubjv9s18t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.4payhwuyuh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Forms.ec8b0m8vzy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Authorization.qjl31ej8ln.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.Web.j6d7zpk03e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Components.WebAssembly.jt9rzx6tc4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.AspNetCore.Metadata.bhaqktdl3q.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Bcl.Cryptography.3pa69hqvhn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.DotNet.HotReload.WebAssembly.Browser.ttbwk6q8rt.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Caching.Abstractions.vvlexwbaez.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Abstractions.wa2ojg94fi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.s6epnzhbd8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Binder.l7o5knh4f1.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.FileExtensions.ke1t9ns7xl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Configuration.Json.k1hilos7yb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.DependencyInjection.nun950pku8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.DependencyInjection.Abstractions.q6idsb19uh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Diagnostics.f7zn8s1thp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Diagnostics.Abstractions.s62vewhs76.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Http.0emfrzn4z9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileProviders.Abstractions.woov9lkdcy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Localization.5atztr4g6x.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileProviders.Physical.4uvrzrkcx9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.FileSystemGlobbing.jnewm5d55t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Localization.Abstractions.pyaf3dbk0g.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Logging.xispqyz68y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Logging.Abstractions.62zefycurg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Options.bs7sofzszu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Options.ConfigurationExtensions.i2sp1sqcbf.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Primitives.ub9q6nskn2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Extensions.Validation.y25xlv978u.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.JsonWebTokens.n0dq0d579y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Abstractions.psm3y4qcdp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Logging.r9vixnozb0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.IdentityModel.Tokens.re3chwnju5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.JSInterop.zhfbg74p0e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.JSInterop.WebAssembly.vi1uw8swyy.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.CSharp.j06echzfpz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.VisualBasic.r1r1o64guk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IdentityModel.Tokens.Jwt.3z2p0190ll.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.VisualBasic.Core.h2kvac5o7p.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/MudBlazor.d6wkksyg7d.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Win32.Primitives.5nko60lje3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/Microsoft.Win32.Registry.lmhf2szmg9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.AppContext.c2z2iszv5a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Buffers.jv7wyzqgeh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Concurrent.qyjrh4n7wg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.NonGeneric.oye06xq4bj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Specialized.ua3ga4ojzm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.Immutable.6nfqc1y6mx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Collections.4u69gysy90.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.Annotations.fu60omoy5j.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.DataAnnotations.b05dlz1h33.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.EventBasedAsync.6se1ltc450.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.Primitives.lzg3p2fcb8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.u8ypsaemfu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ComponentModel.TypeConverter.pua8doket6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Configuration.gkfiw2lgu6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Console.p023t1evip.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Core.lhxt5qhoq6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.DataSetExtensions.zp6ucti1as.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.d0h61hksxr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Data.Common.eqtn3ssyme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Contracts.dck23rphvl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Debug.xp56ua2jd2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.DiagnosticSource.kzyp7dz13i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.FileVersionInfo.8kwccfatn9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Process.pbsvhgaqld.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.StackTrace.uosmk512ff.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.TextWriterTraceListener.f9a4ca75f9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.TraceSource.74aa6mybdk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Tools.r58uhp06u4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Diagnostics.Tracing.uyjvspoaee.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Drawing.nem9gi6fos.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Drawing.Primitives.ygagw4cllm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Dynamic.Runtime.4xdpjnpw4n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Formats.Tar.hjwgs8goh9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Formats.Asn1.9bedxuqoe2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.Extensions.1d3dstrmml.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.Calendars.qqu4d9h6d4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Globalization.de5yfe377i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.Brotli.s6yhzy6ra0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.FileSystem.8e8pwcj0r8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.mbpybl62de.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Compression.ZipFile.5ulbwi9soi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.DriveInfo.0o22a9akm7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.AccessControl.olg38ln9cn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.Primitives.efika37m4r.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.m0wrikzu53.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.FileSystem.Watcher.b81ylq3lid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.MemoryMappedFiles.1qwcduyngl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.IsolatedStorage.moxgx46g2v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipelines.8cw6ik4s41.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipes.AccessControl.yejz5yzur4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.Pipes.aovxgtgqh6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.UnmanagedMemoryStream.09whssgw8a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.IO.lavhpdycer.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.AsyncEnumerable.a9leffpn15.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Parallel.g7xw2v7b07.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Expressions.r1c6atm1cw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.Queryable.sdb7n2mhn5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Memory.i4ezuafn9k.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Http.Json.zy8lvi4mlm.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.HttpListener.bzgrr803nf.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.NameResolution.97kbgrqa3x.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Http.c5n0c1iaa3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Linq.rskygq9p37.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.NetworkInformation.6lqpzaxhm8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Ping.8imioclqo5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Primitives.06opecf70b.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Mail.tbh6kodhoc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Quic.m8fkmwx2e2.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Requests.r215bg21jb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Security.7zwmva046j.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.ServerSentEvents.c4uhw1iihb.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.ServicePoint.jysyz6pe5n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.Sockets.3pbfy2myku.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebClient.0vydlgc6dw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebHeaderCollection.7o9dkw6pk7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebProxy.zmhtx343lv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Numerics.Vectors.95xmo86x7v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebSockets.Client.2f3nip0afr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.4qaklzza4n.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Net.WebSockets.gm6qkoxxpi.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Numerics.ig9uomhcbs.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ObjectModel.snprhmugxx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Xml.Linq.lr5v2oiugs.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Uri.z6jswaywn8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.DataContractSerialization.gjeod45zn6.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.DispatchProxy.upd872z9tl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Private.Xml.wtrgu5mtlc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.ILGeneration.g7zocluvg9.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.mrh9tkt04t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Emit.Lightweight.dg35e9lw3s.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Extensions.sognfb51go.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Metadata.4temtjmiid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.Primitives.rla5yzpm68.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.TypeExtensions.eziqyy81b1.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.Reader.42xaf3wy3o.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Reflection.d59jdh5una.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.ResourceManager.78ixpnkxwz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Resources.Writer.j5qafotg8o.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.CompilerServices.Unsafe.4s8vka7mb8.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.CompilerServices.VisualC.7dilrkv0n5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Extensions.x9isqqr7mp.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Handles.gmejdz8b1i.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.RuntimeInformation.zydo3g4f27.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Loader.3t71kb21wu.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.InteropServices.y2d70ja2cw.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Intrinsics.kmq2apj5l0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Numerics.n8gwbfvruj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Json.w5ytzloqtn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Formatters.kp04s3jyn3.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Primitives.ktqshul6zq.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.Xml.zxalj6oi7a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.AccessControl.l725whzq2q.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.csube7l7j7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Runtime.Serialization.oqtdyhn9ex.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Claims.ls4mvh9izv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Csp.dh1ommb4jg.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Algorithms.xptci9gx2e.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Cng.cwmo3bkk7r.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Encoding.mjrnxqi695.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.Primitives.3u8l6vjobk.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.OpenSsl.bwa2csm6hl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.X509Certificates.ha8unomn85.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Principal.Windows.xecxe1aqkj.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Cryptography.k3w9v7ue50.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.Principal.60u8ec2sxl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.SecureString.eim2t43py4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Security.n9s9f533o4.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ServiceModel.Web.0gnfditp44.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ServiceProcess.isfmih530m.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.g0sgi8atoh.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.Extensions.mr1rkcnv13.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encoding.CodePages.uujl0fau9d.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Encodings.Web.mb9atwjqsn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.Json.hphxl2km4u.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.AccessControl.m54ktoxm2s.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Text.RegularExpressions.6a9cxw2dq7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Channels.v1qpu5ozcz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Overlapped.jgaekt0s0k.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Dataflow.tnzumxbiut.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Extensions.abjpbegqw7.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.Parallel.uopu4j1ll0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Thread.icdc9s98z0.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Tasks.f8ooi2bwxq.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.ThreadPool.sqmy5jnljd.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.nxaopq8r9v.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Threading.Timer.n7hcp5usgn.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Transactions.Local.q4k65jbhaz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Transactions.vnrbvecmwd.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.ValueTuple.6b0gmpb390.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Web.aeo7nmvkid.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Web.HttpUtility.cxyvb282ci.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Windows.brg453rzbv.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.Linq.nmrhj7elbr.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.Serialization.ckvc8z5y7y.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.ReaderWriter.91p1gp9557.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XPath.XDocument.3ukl29h35t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XDocument.yqi6lt4nme.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XmlDocument.kp4g8oyokz.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XPath.mto1j3qx1a.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.XmlSerializer.1mt75y9wos.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.Xml.5s4754zdrc.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/System.802vhulao5.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/WindowsBase.8yv9o2iuhl.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/mscorlib.d4fuuhbiqe.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/netstandard.qwxk4mrnbx.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Application.b8m3bwj182.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Domain.7nnvbd3g2t.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/TaxBaik.Web.Client.4m5ta01x14.wasm","status":200},{"url":"http://localhost:5001/taxbaik/admin/_framework/icudt_EFIGS.tptq2av103.dat","status":200}]
[Browser Console] [info] Debugging hotkey: Shift+Alt+D (when application has focus)
✘ 109 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button (19.4s)
- 115 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:28:7 › admin CRM pages › TaxFilingSchedules page loads with D-day tracking
- 116 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:38:7 › admin CRM pages › Contracts page loads with MRR display
- 117 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:48:7 › admin CRM pages › ConsultingActivities page loads with activity records
- 118 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:58:7 › admin CRM pages › RevenueTrackings page loads with payment status tracking
- 119 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:68:7 › admin CRM pages › CRM navigation group is visible and expandable
- 120 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:90:7 › admin CRM pages › TaxProfiles editor panel is visible on add button click
- 121 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:99:7 › admin CRM pages › No console errors on CRM page navigation
- 122 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:131:7 › admin CRM pages › TaxProfiles form displays valid business type combo choices
- 123 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:155:7 › admin CRM pages › TaxFilingSchedules form displays filing type combo choices
- 124 [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:178:7 › admin CRM pages › Contracts form displays service type combo choices
✓ 125 [Galaxy S9+] › tests\e2e\admin-smoke.spec.ts:10:7 › admin smoke › @smoke logs in and lands on dashboard without circuit errors (5.4s)
✓ Logged in and redirected to dashboard
✘ 114 [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports (35.8s)
✘ 101 [iPad Pro] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links (1.7m)
✓ Blog list page loaded
✓ Logout successful
✓ Blog CRUD flow complete
✓ 126 [Galaxy S9+] › tests\e2e\blog-crud.spec.ts:9:7 › blog CRUD operations › complete blog creation, read, update, delete flow (37.6s)
 
=== 1단계: 로그인 페이지 이동 ===
✓ 페이지 로드: 관리자 로그인
 
=== 2단계: 로그인 수행 ===
BAD HTTP: 400 http://localhost:5001/taxbaik/api/auth/login
CONSOLE: error Failed to load resource: the server responded with a status of 400 (Bad Request)
✘ 113 [Galaxy S9+] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard (1.1m)
✓ 130 [Galaxy S9+] › tests\e2e\contact-submit.spec.ts:9:7 › contact submit › creates an inquiry through the public API (379ms)
✘ 127 [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile (34.9s)
✘ 111 [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads (1.5m)
✘ 131 [Galaxy S9+] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list (28.2s)
✘ 97 [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads (3.0m)
✘ 132 [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile (35.0s)
✘ 128 [Galaxy S9+] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages (1.5m)
✘ 105 [iPad Pro] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics (3.6s)
🔐 Logging in...
✘ 137 [Galaxy S9+] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics (13.2s)
✘ 136 [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports (38.6s)
✘ 138 [Galaxy S9+] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly (5.4s)
=== 1단계: 홈페이지 접속 ===
✓ 홈페이지 로드됨
✓ 페이지 제목: 백원숙 세무회계 | 부가가치세 1기 확정신고 — 지금 상담하세요
 
=== 2단계: 로그인 페이지 이동 ===
✓ 로그인 페이지 접속
 
=== 3단계: 로그인 수행 ===
✓ 입력: admin
 
=== 4단계: 대시보드 확인 ===
✓ 대시보드 URL 도착
✓ 로그아웃 버튼 표시 (인증 완료)
✘ 110 [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads (3.0m)
✘ 139 [Galaxy S9+] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD (36.5s)
✘ 143 [Galaxy S9+] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics (5.1s)
✘ 144 [Galaxy S9+] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app (3.4s)
✓ 145 [Galaxy S9+] › tests\e2e\route-isolation.spec.ts:14:7 › route isolation › admin login boots the admin app under the admin base path (1.4s)
✘ 146 [Public Smoke] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics (2.4s)
✓ 147 [Admin Smoke] › tests\e2e\admin-smoke.spec.ts:10:7 › admin smoke › @smoke logs in and lands on dashboard without circuit errors (4.5s)
✓ 148 [Route Isolation] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app (2.1s)
✓ 149 [Route Isolation] › tests\e2e\route-isolation.spec.ts:14:7 › route isolation › admin login boots the admin app under the admin base path (782ms)
✘ 129 [Galaxy S9+] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation (4.6s)
✘ 133 [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads (3.0m)
✘ 134 [Galaxy S9+] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message (3.0m)
✘ 135 [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads (3.0m)
✘ 141 [Galaxy S9+] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs (146ms)
 
=== 1단계: 로그인 페이지 방문 ===
✅ 페이지 제목: 관리자 로그인
✅ 페이지 길이: 8797 바이트
 
=== 2단계: 로그인 필드 확인 ===
✅ 사용자명 필드: 보임 ✨
✅ 비밀번호 필드: 보임 ✨
✅ 로그인 버튼: 보임 ✨
 
=== 3단계: 로그인 입력 & 제출 ===
✅ 사용자명 입력: admin
✅ 비밀번호 입력: ••••••••
✅ 로그인 버튼 클릭
 
=== 4단계: 로그인 결과 대기 ===
✘ 142 [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads (3.0m)
⚠️ 네비게이션 타임아웃 (이미 로그인됨 또는 리다이렉트 중)
✅ 최종 URL: http://localhost:5001/taxbaik/admin/login
✅ 로그인 성공! 대시보드로 이동됨
 
=== 5단계: 스크린샷 ===
✅ 증빙 저장
 
=== 🎯 테스트 결과 ===
✅ 페이지 로드: 성공
✅ 사용자명 필드: 렌더링됨
✅ 비밀번호 필드: 렌더링됨
✅ 로그인 버튼: 렌더링됨
✓ 152 [Galaxy S9+] › tests\e2e\login-test.spec.ts:23:5 › Admin Login Page - Full Flow Test (18.4s)
✘ 140 [Galaxy S9+] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links (1.7m)
✘ 150 [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads (3.0m)
✘ 151 [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads (3.0m)
✘ 153 [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load (3.0m)
✘ 154 [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads (3.0m)
✘ 155 [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load (3.0m)
✘ 156 [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load (3.0m)
 
 
1) [Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
 
Error: expect(locator).toContainText(expected) failed
 
Locator: locator('body')
Timeout: 12000ms
- Expected substring - 1
+ Received string + 40
 
- 세무 프로필
+
+
+ Menu
+ TaxBaik
+ 세무회계 관리 대시보드
+ 공개 사이트
+ 로그아웃
+
+ T
+ TaxBaik
+ 세무 운영 콘솔
+
+ 개요<path d="M0 0h24v24H0z" fill="none"/><path d="M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"/>
+ 대시보드
+
+ 공개 사이트
+ 로그아웃요청한 페이지를 찾을 수 없습니다.
+
+
+
+
+
+ 연결 재설정 중...
+ 새로운 버전으로 업데이트되었습니다.
+ 자동으로 페이지를 새로고침합니다. 잠시만 기다려주세요.
+
+
+
+
+ 관리자 화면을 불러오는 중 오류가 발생했습니다. 브라우저 콘솔 또는 서버 client-logs를 확인하세요.
+ 새로고침
+ 닫기
+
+
+
+
+
+
+
+
 
Call log:
- Expect "toContainText" with timeout 12000ms
- waiting for locator('body')
15 × locator resolved to <body>…</body>
- unexpected value "

Menu
TaxBaik
세무회계 관리 대시보드
공개 사이트
로그아웃
 
T
TaxBaik
세무 운영 콘솔
 
개요<path d="M0 0h24v24H0z" fill="none"/><path d="M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"/>
대시보드
 
공개 사이트
로그아웃요청한 페이지를 찾을 수 없습니다.
 

 


연결 재설정 중...
새로운 버전으로 업데이트되었습니다.
자동으로 페이지를 새로고침합니다. 잠시만 기다려주세요.


 

관리자 화면을 불러오는 중 오류가 발생했습니다. 브라우저 콘솔 또는 서버 client-logs를 확인하세요.
새로고침
닫기

 



 
 
"
 
 
at helpers\admin-auth.ts:98
 
96 | export async function waitForAdminSection(page: Page, headingText: string) {
97 | const hero = page.locator('.admin-page-hero');
> 98 | await expect(page.locator('body')).toContainText(headingText, { timeout: Wait.page });
| ^
99 | await expect(hero).toBeVisible({ timeout: Wait.page });
100 | await expect(hero).toContainText(headingText, { timeout: Wait.page });
101 | await expect(page.getByRole('heading', { name: headingText, exact: true })).toBeVisible({ timeout: Wait.page });
at waitForAdminSection (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:98:38)
at C:\Temp\taxbaik\tests\e2e\admin-crm-pages.spec.ts:21:30
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Desktop-Chrome\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Desktop-Chrome\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
2) [Desktop Chrome] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 60000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 60000ms
- waiting for locator('.admin-page-hero')
 
 
75 | await expect(page).toHaveURL(/\/taxbaik\/admin\/dashboard$/, { timeout: 20_000 });
76 | // WASM 부팅에 시간이 걸릴 수 있으므로 더 긴 타임아웃 사용
> 77 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 60_000 });
| ^
78 | await expect(page.locator('.admin-page-hero')).toContainText('대시보드');
79 | await expect(page.getByRole('link', { name: /로그아웃/ })).toBeVisible({ timeout: 30_000 });
80 | expect(consoleErrors, 'browser console/page errors').toEqual([]);
at C:\Temp\taxbaik\tests\e2e\admin-login.spec.ts:77:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-1\traces\481c7578028bb96ee688-aefc7ef384b5d1902e60.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
3) [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('input[placeholder*="사용자"]')
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for locator('input[placeholder*="사용자"]')
 
 
11 | await page.goto(`${baseUrl}/admin/login`);
12 | await expect(page.locator('text=관리자 로그인')).toBeVisible();
> 13 | await expect(page.locator('input[placeholder*="사용자"]')).toBeVisible();
| ^
14 | });
15 |
16 | test('Dashboard page loads', async ({ page }) => {
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:13:61
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-2\traces\7ee68a35b274332ffb95-937e406787c122234496.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
4) [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-25\traces\7ee68a35b274332ffb95-1fb45c6082ca8131a0af.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
16 | test('Dashboard page loads', async ({ page }) => {
17 | await page.goto(`${baseUrl}/admin/login`);
> 18 | await page.fill('input[name="username"]', username);
| ^
19 | await page.fill('input[name="password"]', password);
20 | await page.click('button[type="submit"]');
21 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:18:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
5) [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-66\traces\7ee68a35b274332ffb95-3e67d5552a3f87367a92.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
31 | test('Blog page loads', async ({ page }) => {
32 | await page.goto(`${baseUrl}/admin/login`);
> 33 | await page.fill('input[name="username"]', username);
| ^
34 | await page.fill('input[name="password"]', password);
35 | await page.click('button[type="submit"]');
36 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:33:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
6) [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-84\traces\7ee68a35b274332ffb95-85c3570ebfdc58417151.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
46 | test('Inquiry page loads', async ({ page }) => {
47 | await page.goto(`${baseUrl}/admin/login`);
> 48 | await page.fill('input[name="username"]', username);
| ^
49 | await page.fill('input[name="password"]', password);
50 | await page.click('button[type="submit"]');
51 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:48:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
7) [Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-94\traces\7ee68a35b274332ffb95-2ac99765fb27ce9f3f94.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
61 | test('CRM pages load', async ({ page }) => {
62 | await page.goto(`${baseUrl}/admin/login`);
> 63 | await page.fill('input[name="username"]', username);
| ^
64 | await page.fill('input[name="password"]', password);
65 | await page.click('button[type="submit"]');
66 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:63:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
8) [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
29 | // 2. 대시보드로 이동 및 최초 로드 대기
30 | await page.goto(`${baseUrl}/admin/dashboard`);
> 31 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
32 |
33 | // 3. 각 디바이스별로 뷰포트를 변경하며 검증 (새로고침 없이 초고속 검증)
34 | for (const device of deviceTests) {
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:31:52
 
Error: ENOENT: no such file or directory, unlink 'C:\Temp\taxbaik\test-results\.playwright-artifacts-4\95c7aa3db3bf4bb6b7bed3223906b6bc.zip'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-Desktop-Chrome\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-Desktop-Chrome\error-context.md
 
9) [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
89 | await page.setViewportSize({ width: 375, height: 667 });
90 | await page.goto(`${baseUrl}/admin/dashboard`);
> 91 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
92 |
93 | // 모바일에서는 메뉴 토글 버튼이 있어야 함
94 | const menuButton = page.locator('.admin-menu-button');
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:91:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-9\traces\da7c59ce61d93dc7813a-5d3f92e340e513b2029a.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
10) [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
 
TimeoutError: page.waitForSelector: Timeout 30000ms exceeded.
Call log:
- waiting for locator('input[type="text"], textarea, .mud-input-base, .mud-field') to be visible
 
 
107 | await page.setViewportSize({ width: 480, height: 853 });
108 | await page.goto(`${baseUrl}/admin/faqs/create`);
> 109 | await page.waitForSelector('input[type="text"], textarea, .mud-input-base, .mud-field', { timeout: 30_000 });
| ^
110 |
111 | const inputs = page.locator('input[type="text"], textarea, .mud-input-base, .mud-field');
112 | const inputCount = await inputs.count();
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:109:16
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-19\traces\da7c59ce61d93dc7813a-c665baf9a8ce69347298.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
11) [Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
137 | await page.setViewportSize(viewport);
138 | await page.goto(`${baseUrl}/admin/dashboard`);
> 139 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
140 |
141 | const logoutButton = page.locator('a:has-text("로그아웃"), button:has-text("로그아웃")').first();
142 | if (await logoutButton.count() > 0) {
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:139:54
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-47\traces\da7c59ce61d93dc7813a-e31c551215937955df13.network'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
12) [Desktop Chrome] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first()
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first()
 
 
7 | await page.goto(`${baseUrl}/blog`);
8 | const firstPost = page.locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first();
> 9 | await expect(firstPost).toBeVisible();
| ^
10 | const detailHref = await firstPost.getAttribute('href');
11 | expect(detailHref).toMatch(/^\/taxbaik\/blog\/[a-z0-9-]+$/);
12 | const detailPath = detailHref?.replace('/taxbaik', '') ?? '/blog';
at C:\Temp\taxbaik\tests\e2e\blog-seo.spec.ts:9:29
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-7\traces\1d0d3a59ebe6e0e691d7-f1eeed31da0cb3feeeb9.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
13) [Desktop Chrome] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
 
Error: page.evaluate: Error: login failed: 400 Bad Request
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at loginThroughAdminUi (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:53:30)
at C:\Temp\taxbaik\tests\e2e\blog-validation.spec.ts:26:3
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-Desktop-Chrome\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-Desktop-Chrome\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
14) [Desktop Chrome] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.mud-main-content').getByText('문의 관리').first()
Expected: visible
Timeout: 20000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 20000ms
- waiting for locator('.mud-main-content').getByText('문의 관리').first()
 
 
53 | await loginThroughAdminUi(page, baseUrl, username, password);
54 | await navigateInBlazor(page, `${baseUrl}/admin/inquiries`);
> 55 | await expect(page.locator('.mud-main-content').getByText('문의 관리').first()).toBeVisible({ timeout: 20_000 });
| ^
56 | });
57 |
58 | test('submitting the public Contact.cshtml form shows the success message', async ({ page }) => {
at C:\Temp\taxbaik\tests\e2e\contact-submit.spec.ts:55:80
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, copyfile 'C:\Temp\taxbaik\test-results\.playwright-artifacts-5\traces\78ff188543f551bce0b7-e47709be69cc4baa3d2f-recording3.network' -> 'C:\Temp\taxbaik\test-results\.playwright-artifacts-5\traces\78ff188543f551bce0b7-e47709be69cc4baa3d2f-recording3-pwnetcopy-1.network'
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-5\traces\78ff188543f551bce0b7-e47709be69cc4baa3d2f-recording2.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
15) [Desktop Chrome] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ───────────
 
TimeoutError: page.waitForSelector: Timeout 5000ms exceeded.
Call log:
- waiting for locator('.admin-page-hero') to be visible
 
 
11 |
12 | // Wait for page load
> 13 | await page.waitForSelector('.admin-page-hero', { timeout: 5000 });
| ^
14 | await page.waitForTimeout(2000);
15 |
16 | // Check for metric cards
at C:\Temp\taxbaik\tests\e2e\dashboard-check.spec.ts:13:14
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-8\traces\c9b49e87aa42da94a370-802a93cd4712550011f0.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\dashboard-check-check-dashboard-metrics-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\dashboard-check-check-dashboard-metrics-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
16) [Desktop Chrome] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
 
Error: page.evaluate: Error: login failed: 400 Bad Request
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at loginThroughAdminUi (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:53:30)
at C:\Temp\taxbaik\tests\e2e\full-admin-pages.spec.ts:10:3
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-12\traces\c1459fca16a225cd2316-605468f26201db88e3ec.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
17) [Desktop Chrome] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('text=블로그 관리')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('text=블로그 관리')
 
 
39 | // 네비게이션 메뉴 확인
40 | const blogLink = page.locator('text=블로그 관리');
> 41 | await expect(blogLink).toBeVisible({ timeout: 30000 });
| ^
42 | console.log('✓ 블로그 관리 메뉴 표시');
43 |
44 | // 블로그 페이지로 이동
at C:\Temp\taxbaik\tests\e2e\full-user-flow.spec.ts:41:28
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-6\traces\c6681a4a350aa86369bc-01a4f5a81d4d00a3ba64-recording1.network'
 
Error: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-6\9eb7f8a50571f2f289f25779cc7f8e4b.zip'
 
Test timeout of 180000ms exceeded.
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-Desktop-Chrome\error-context.md
 
18) [Desktop Chrome] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByText('Detail-1783485611950', { exact: true }).first()
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByText('Detail-1783485611950', { exact: true }).first()
 
 
37 |
38 | await expect(page).toHaveURL(/\/taxbaik\/admin\/inquiries\/\d+$/);
> 39 | await expect(page.getByText(name, { exact: true }).first()).toBeVisible();
| ^
40 | await expect(page.getByText(phone, { exact: true }).first()).toBeVisible();
41 | await expect(page.getByText(message, { exact: true }).first()).toBeVisible();
42 | await expect(page.getByRole('button', { name: '신규' })).toBeVisible();
at C:\Temp\taxbaik\tests\e2e\inquiry-detail.spec.ts:39:65
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, copyfile 'C:\Temp\taxbaik\test-results\.playwright-artifacts-10\traces\0b7ed30a9e279ee14eeb-91add6684d79bcdc7c66-recording1.network' -> 'C:\Temp\taxbaik\test-results\.playwright-artifacts-10\traces\0b7ed30a9e279ee14eeb-91add6684d79bcdc7c66-recording1-pwnetcopy-1.network'
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-10\traces\0b7ed30a9e279ee14eeb-91add6684d79bcdc7c66.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-Desktop-Chrome\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
19) [Desktop Chrome] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
 
Error: expect(received).toContain(expected) // indexOf
 
Expected substring: "name=\"username\""
Received string: "<!DOCTYPE html>·
<html lang=\"ko\">·
<head>·
<meta charset=\"utf-8\" />·
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />·
<title>관리자 로그인</title>·
<meta name=\"description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta name=\"keywords\" content=\"백원숙 세무회계, 세무사, 사업자 기장, 양도소득세, 증여세, 상속세, 종합소득세, 절세 상담, 세무 대리\" />·······
<!-- Open Graph / Facebook -->·
<meta property=\"og:type\" content=\"website\" />·
<meta property=\"og:title\" content=\"관리자 로그인\" />·
<meta property=\"og:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"og:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />·
<meta property=\"og:url\" content=\"https://www.taxbaik.com/taxbaik/\" />·······
<!-- Twitter -->·
<meta property=\"twitter:card\" content=\"summary_large_image\" />·
<meta property=\"twitter:title\" content=\"관리자 로그인\" />·
<meta property=\"twitter:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"twitter:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />···
<!-- 검색엔진 등록용 소유권 인증 메타 태그 (발급받으신 토큰이 있으면 아래 content에 넣어 주시면 됩니다) -->·
<!-- <meta name=\"naver-site-verification\" content=\"네이버_서치어드바이저_토큰_입력\" /> -->·
<!-- <meta name=\"google-site-verification\" content=\"구글_서치콘솔_토큰_입력\" /> -->···
<meta name=\"robots\" content=\"index, follow\" />·
<meta name=\"theme-color\" content=\"#C89D6E\" />·
<link rel=\"icon\" type=\"image/svg+xml\" href=\"/taxbaik/favicon.svg\" />·
<link rel=\"alternate icon\" href=\"/taxbaik/favicon.ico\" />···
<!-- RSS Feed -->·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"백원숙 세무회계 블로그\" href=\"/taxbaik/rss.xml\" />·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"TaxBaik Blog Feed\" href=\"/taxbaik/feed.xml\" />·
<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />·
<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />·
<link rel=\"dns-prefetch\" href=\"https://cdn.jsdelivr.net\" />·
<link href=\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;700&family=Outfit:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\" />·
<link rel=\"canonical\" href=\"http://localhost:5001/taxbaik/admin/login\" />·
<link href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css\" rel=\"stylesheet\" />·
<link rel=\"stylesheet\" href=\"/taxbaik/css/site.css\" asp-append-version=\"true\" />···
<!-- 구조화된 데이터 (JSON-LD Schema Markup) -->·
<script type=\"application/ld+json\">·

\"@context\": \"https://schema.org\",·
\"@type\": \"ProfessionalService\",·
\"name\": \"백원숙 세무회계\",·
\"description\": \"사업자 기장, 부동산 양도세·증여세, 종합소득세 전문 상담 세무사\",·
\"url\": \"https://www.taxbaik.com/taxbaik/\",·
\"telephone\": \"010-4122-8268\",·
\"email\": \"taxbaik5668@gmail.com\",·
\"address\": {·
\"@type\": \"PostalAddress\",·
\"addressCountry\": \"KR\"·
},·
\"sameAs\": [·
\"https://www.instagram.com/taxtory5668/\",·
\"https://pf.kakao.com/_xoxchTX\"·


</script>···
<!-- Google tag (gtag.js) -->·
<script async src=\"https://www.googletagmanager.com/gtag/js?id=G-25KRKY45D7\"></script>·
<script>·
window.dataLayer = window.dataLayer || [];·
function gtag(){dataLayer.push(arguments);}·
gtag('js', new Date());···
gtag('config', 'G-25KRKY45D7');·
</script>·
</head>·
<body class=\"with-mobile-cta\" data-kakao-url=\"https://pf.kakao.com/_xoxchTX\">·
<partial name=\"_Header\" />·
<main role=\"main\" class=\"pb-5\">··········
<section class=\"container py-5\" style=\"max-width: 560px;\">
<div class=\"card shadow-sm border-0\">
<div class=\"card-body p-4 p-md-5\">
<div class=\"mb-4\">
<p class=\"text-uppercase text-muted small mb-1\">TaxBaik Admin</p>
<h1 class=\"h3 fw-bold mb-2\">관리자 로그인</h1>
<p class=\"text-muted mb-0\">로그인 후 대시보드와 관리자 기능을 이용할 수 있습니다.</p>
</div>··
<form id=\"admin-login-form\" method=\"post\" class=\"vstack gap-3\">
<input name=\"__RequestVerificationToken\" type=\"hidden\" value=\"CfDJ8MSeutqIyfZKsHr5RAKz7bOtUgv0RtgWEhU3bXs-XyNKVTFnGf2Wk8_9_Yj7Gkjgw6VuDRexmEf7_jr75Lmw7Dt5CNnAGdK9UaskBOFNhiMEmOSjOZPmA0JyU9RwxbSCbGjpO0kbXTe182zIepDqCUc\" />
<input type=\"hidden\" id=\"ReturnUrl\" name=\"ReturnUrl\" />·
<div>
<label class=\"form-label\" for=\"Username\">사용자명</label>
<input class=\"form-control\" id=\"Username\" name=\"Username\" value=\"\" autocomplete=\"username\" />
<span class=\"text-danger small\"></span>
</div>·
<div>
<label class=\"form-label\" for=\"Password\">비밀번호</label>
<input class=\"form-control\" id=\"Password\" name=\"Password\" type=\"password\" autocomplete=\"current-password\" />
<span class=\"text-danger small\"></span>
</div>·
<div class=\"form-check\">
<input class=\"form-check-input\" id=\"RememberMe\" name=\"RememberMe\" type=\"checkbox\" value=\"true\" checked=\"checked\" />
<label class=\"form-check-label\" for=\"RememberMe\">로그인 상태 유지</label>
</div>·
<button class=\"btn btn-dark w-100\" id=\"admin-login-submit\" type=\"submit\">
<span>로그인</span>
</button>
</form>·
<p class=\"text-muted small mt-4 mb-0\">
이 페이지는 서버 렌더링 기반입니다. 로그인 성공 후 관리자 웹앱으로 이동합니다.
</p>
</div>
</div>
</section>···
</main>·
<footer class=\"bg-light border-top mt-5 py-5\">·
<div class=\"container\">·
<div class=\"row g-5\">·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">백원숙 세무회계</h6>·
<p class=\"small text-muted\">·
사업자 기장, 부동산 양도세·증여세,<br />·
종합소득세 전문 상담·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">메뉴</h6>·
<ul class=\"list-unstyled small\">·
<li class=\"mb-2\"><a href=\"/taxbaik/\" class=\"text-decoration-none text-muted\">홈</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/about\" class=\"text-decoration-none text-muted\">세무사 소개</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/services\" class=\"text-decoration-none text-muted\">전문 서비스</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/blog\" class=\"text-decoration-none text-muted\">세무 정보</a></li>·
<li><a href=\"/taxbaik/contact\" class=\"text-decoration-none text-muted\">상담 신청</a></li>·
</ul>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">연락처</h6>·
<p class=\"small\">·
📞 <a href=\"tel:010-4122-8268\" class=\"text-decoration-none text-muted\">010-4122-8268</a><br />·
📧 <a href=\"mailto:taxbaik5668@gmail.com\" class=\"text-decoration-none text-muted\">taxbaik5668@gmail.com</a>·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">채널</h6>·
<p class=\"small\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn btn-sm btn-warning me-2\">카카오톡</a>·
<a href=\"https://www.instagram.com/taxtory5668/\" target=\"_blank\" class=\"btn btn-sm btn-outline-secondary\">Instagram</a>·
</p>·
</div>·
</div>·
<hr class=\"my-4\" />·
<div class=\"text-center small text-muted\">·
<p>© 2026 백원숙 세무회계. All rights reserved.</p>·
<div class=\"mb-2\">·
<a href=\"/taxbaik/privacy\" class=\"text-decoration-none text-muted me-2\">개인정보처리방침</a>·
<span class=\"text-muted\">|</span>·
<a href=\"/taxbaik/terms\" class=\"text-decoration-none text-muted ms-2 me-2\">이용약관</a>·
<span class=\"text-muted\">|</span>·
</div>·
<div class=\"mt-2 text-muted\" style=\"font-size: 0.75rem; opacity: 0.6;\">·
vunknown · unknown·
</div>·
</div>·
</div>·
</footer>···
<!-- Mobile Fixed CTA -->·
<div class=\"mobile-cta-bar d-lg-none\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn-kakao-mobile\">·
💬 카카오 상담하기·
</a>·
</div>···
<script src=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js\" defer></script>·
<script src=\"/taxbaik/js/site.js\" asp-append-version=\"true\" defer></script>·······
</body>·
</html>·
"
 
16 |
17 | const html = await response.text();
> 18 | expect(html).toContain('name="username"');
| ^
19 | expect(html).toContain('name="password"');
20 | expect(html).toContain('admin-login-form');
21 | });
at C:\Temp\taxbaik\tests\e2e\login-test.spec.ts:18:16
 
Error: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-11\25613ef886db619a18a5e8eb23c23a6c.zip'
 
Test timeout of 180000ms exceeded.
 
20) [Desktop Chrome] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByRole('link', { name: /상담 신청|무료 상담 신청/ })
Expected: visible
Error: strict mode violation: getByRole('link', { name: /상담 신청|무료 상담 신청/ }) resolved to 2 elements:
1) <a href="/taxbaik/contact" class="btn btn-primary btn-lg">상담 신청하기</a> aka getByRole('link', { name: '상담 신청하기' })
2) <a href="/taxbaik/contact" class="text-decoration-none text-muted">상담 신청</a> aka getByRole('link', { name: '상담 신청', exact: true })
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByRole('link', { name: /상담 신청|무료 상담 신청/ })
 
 
10 | await expect(page).not.toHaveTitle(/관리자/);
11 | await expect(page.getByRole('heading', { name: /세금과 자산|백원숙 세무회계/ })).toBeVisible();
> 12 | await expect(page.getByRole('link', { name: /상담 신청|무료 상담 신청/ })).toBeVisible();
| ^
13 | await expect(page.locator('meta[name="description"]')).toHaveAttribute('content', /사업자 기장|부동산|종합소득세/);
14 | await expect(page.getByRole('heading', { name: /상담 과정/ })).toBeVisible();
15 |
at C:\Temp\taxbaik\tests\e2e\public-smoke.spec.ts:12:70
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Desktop-Chrome\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Desktop-Chrome\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Desktop-Chrome\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Desktop-Chrome\trace.zip
Usage:
 
npx playwright show-trace test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Desktop-Chrome\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
21) [iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
22) [iPhone 12] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
23) [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
24) [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
25) [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
26) [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
27) [iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
28) [iPhone 12] › tests\e2e\admin-password-change.spec.ts:10:7 › admin password change › changes password through the real admin UI
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-password-change-admi-f2a6b-d-through-the-real-admin-UI-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-password-change-admi-f2a6b-d-through-the-real-admin-UI-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
29) [iPhone 12] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
30) [iPhone 12] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
31) [iPhone 12] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
32) [iPhone 12] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
33) [iPhone 12] › tests\e2e\admin-smoke.spec.ts:10:7 › admin smoke › @smoke logs in and lands on dashboard without circuit errors
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-smoke-admin-smoke-sm-fb1b2-oard-without-circuit-errors-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-smoke-admin-smoke-sm-fb1b2-oard-without-circuit-errors-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
34) [iPhone 12] › tests\e2e\blog-crud.spec.ts:9:7 › blog CRUD operations › complete blog creation, read, update, delete flow
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-crud-blog-CRUD-operat-e05f5-ion-read-update-delete-flow-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-crud-blog-CRUD-operat-e05f5-ion-read-update-delete-flow-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
35) [iPhone 12] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
36) [iPhone 12] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
37) [iPhone 12] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
38) [iPhone 12] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-024b3-m-shows-the-success-message-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\contact-submit-contact-sub-024b3-m-shows-the-success-message-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
39) [iPhone 12] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ────────────────
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\dashboard-check-check-dashboard-metrics-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
40) [iPhone 12] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
41) [iPhone 12] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
42) [iPhone 12] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
43) [iPhone 12] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
 
Error: expect(received).toContain(expected) // indexOf
 
Expected substring: "name=\"username\""
Received string: "<!DOCTYPE html>·
<html lang=\"ko\">·
<head>·
<meta charset=\"utf-8\" />·
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />·
<title>관리자 로그인</title>·
<meta name=\"description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta name=\"keywords\" content=\"백원숙 세무회계, 세무사, 사업자 기장, 양도소득세, 증여세, 상속세, 종합소득세, 절세 상담, 세무 대리\" />·······
<!-- Open Graph / Facebook -->·
<meta property=\"og:type\" content=\"website\" />·
<meta property=\"og:title\" content=\"관리자 로그인\" />·
<meta property=\"og:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"og:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />·
<meta property=\"og:url\" content=\"https://www.taxbaik.com/taxbaik/\" />·······
<!-- Twitter -->·
<meta property=\"twitter:card\" content=\"summary_large_image\" />·
<meta property=\"twitter:title\" content=\"관리자 로그인\" />·
<meta property=\"twitter:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"twitter:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />···
<!-- 검색엔진 등록용 소유권 인증 메타 태그 (발급받으신 토큰이 있으면 아래 content에 넣어 주시면 됩니다) -->·
<!-- <meta name=\"naver-site-verification\" content=\"네이버_서치어드바이저_토큰_입력\" /> -->·
<!-- <meta name=\"google-site-verification\" content=\"구글_서치콘솔_토큰_입력\" /> -->···
<meta name=\"robots\" content=\"index, follow\" />·
<meta name=\"theme-color\" content=\"#C89D6E\" />·
<link rel=\"icon\" type=\"image/svg+xml\" href=\"/taxbaik/favicon.svg\" />·
<link rel=\"alternate icon\" href=\"/taxbaik/favicon.ico\" />···
<!-- RSS Feed -->·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"백원숙 세무회계 블로그\" href=\"/taxbaik/rss.xml\" />·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"TaxBaik Blog Feed\" href=\"/taxbaik/feed.xml\" />·
<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />·
<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />·
<link rel=\"dns-prefetch\" href=\"https://cdn.jsdelivr.net\" />·
<link href=\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;700&family=Outfit:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\" />·
<link rel=\"canonical\" href=\"http://localhost:5001/taxbaik/admin/login\" />·
<link href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css\" rel=\"stylesheet\" />·
<link rel=\"stylesheet\" href=\"/taxbaik/css/site.css\" asp-append-version=\"true\" />···
<!-- 구조화된 데이터 (JSON-LD Schema Markup) -->·
<script type=\"application/ld+json\">·

\"@context\": \"https://schema.org\",·
\"@type\": \"ProfessionalService\",·
\"name\": \"백원숙 세무회계\",·
\"description\": \"사업자 기장, 부동산 양도세·증여세, 종합소득세 전문 상담 세무사\",·
\"url\": \"https://www.taxbaik.com/taxbaik/\",·
\"telephone\": \"010-4122-8268\",·
\"email\": \"taxbaik5668@gmail.com\",·
\"address\": {·
\"@type\": \"PostalAddress\",·
\"addressCountry\": \"KR\"·
},·
\"sameAs\": [·
\"https://www.instagram.com/taxtory5668/\",·
\"https://pf.kakao.com/_xoxchTX\"·


</script>···
<!-- Google tag (gtag.js) -->·
<script async src=\"https://www.googletagmanager.com/gtag/js?id=G-25KRKY45D7\"></script>·
<script>·
window.dataLayer = window.dataLayer || [];·
function gtag(){dataLayer.push(arguments);}·
gtag('js', new Date());···
gtag('config', 'G-25KRKY45D7');·
</script>·
</head>·
<body class=\"with-mobile-cta\" data-kakao-url=\"https://pf.kakao.com/_xoxchTX\">·
<partial name=\"_Header\" />·
<main role=\"main\" class=\"pb-5\">··········
<section class=\"container py-5\" style=\"max-width: 560px;\">
<div class=\"card shadow-sm border-0\">
<div class=\"card-body p-4 p-md-5\">
<div class=\"mb-4\">
<p class=\"text-uppercase text-muted small mb-1\">TaxBaik Admin</p>
<h1 class=\"h3 fw-bold mb-2\">관리자 로그인</h1>
<p class=\"text-muted mb-0\">로그인 후 대시보드와 관리자 기능을 이용할 수 있습니다.</p>
</div>··
<form id=\"admin-login-form\" method=\"post\" class=\"vstack gap-3\">
<input name=\"__RequestVerificationToken\" type=\"hidden\" value=\"CfDJ8MSeutqIyfZKsHr5RAKz7bNc5XRjCceyOBgn9zkdJXBWN57npr2O_DegUkJZiDxScNY07J0b6TMmz_daklUQkcRIBWIa46HwrOOur4GDDgMm992sW7JLD_iBKwHok0w-HaCkhXENXvuS8sv_gkpCyiQ\" />
<input type=\"hidden\" id=\"ReturnUrl\" name=\"ReturnUrl\" />·
<div>
<label class=\"form-label\" for=\"Username\">사용자명</label>
<input class=\"form-control\" id=\"Username\" name=\"Username\" value=\"\" autocomplete=\"username\" />
<span class=\"text-danger small\"></span>
</div>·
<div>
<label class=\"form-label\" for=\"Password\">비밀번호</label>
<input class=\"form-control\" id=\"Password\" name=\"Password\" type=\"password\" autocomplete=\"current-password\" />
<span class=\"text-danger small\"></span>
</div>·
<div class=\"form-check\">
<input class=\"form-check-input\" id=\"RememberMe\" name=\"RememberMe\" type=\"checkbox\" value=\"true\" checked=\"checked\" />
<label class=\"form-check-label\" for=\"RememberMe\">로그인 상태 유지</label>
</div>·
<button class=\"btn btn-dark w-100\" id=\"admin-login-submit\" type=\"submit\">
<span>로그인</span>
</button>
</form>·
<p class=\"text-muted small mt-4 mb-0\">
이 페이지는 서버 렌더링 기반입니다. 로그인 성공 후 관리자 웹앱으로 이동합니다.
</p>
</div>
</div>
</section>···
</main>·
<footer class=\"bg-light border-top mt-5 py-5\">·
<div class=\"container\">·
<div class=\"row g-5\">·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">백원숙 세무회계</h6>·
<p class=\"small text-muted\">·
사업자 기장, 부동산 양도세·증여세,<br />·
종합소득세 전문 상담·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">메뉴</h6>·
<ul class=\"list-unstyled small\">·
<li class=\"mb-2\"><a href=\"/taxbaik/\" class=\"text-decoration-none text-muted\">홈</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/about\" class=\"text-decoration-none text-muted\">세무사 소개</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/services\" class=\"text-decoration-none text-muted\">전문 서비스</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/blog\" class=\"text-decoration-none text-muted\">세무 정보</a></li>·
<li><a href=\"/taxbaik/contact\" class=\"text-decoration-none text-muted\">상담 신청</a></li>·
</ul>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">연락처</h6>·
<p class=\"small\">·
📞 <a href=\"tel:010-4122-8268\" class=\"text-decoration-none text-muted\">010-4122-8268</a><br />·
📧 <a href=\"mailto:taxbaik5668@gmail.com\" class=\"text-decoration-none text-muted\">taxbaik5668@gmail.com</a>·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">채널</h6>·
<p class=\"small\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn btn-sm btn-warning me-2\">카카오톡</a>·
<a href=\"https://www.instagram.com/taxtory5668/\" target=\"_blank\" class=\"btn btn-sm btn-outline-secondary\">Instagram</a>·
</p>·
</div>·
</div>·
<hr class=\"my-4\" />·
<div class=\"text-center small text-muted\">·
<p>© 2026 백원숙 세무회계. All rights reserved.</p>·
<div class=\"mb-2\">·
<a href=\"/taxbaik/privacy\" class=\"text-decoration-none text-muted me-2\">개인정보처리방침</a>·
<span class=\"text-muted\">|</span>·
<a href=\"/taxbaik/terms\" class=\"text-decoration-none text-muted ms-2 me-2\">이용약관</a>·
<span class=\"text-muted\">|</span>·
</div>·
<div class=\"mt-2 text-muted\" style=\"font-size: 0.75rem; opacity: 0.6;\">·
vunknown · unknown·
</div>·
</div>·
</div>·
</footer>···
<!-- Mobile Fixed CTA -->·
<div class=\"mobile-cta-bar d-lg-none\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn-kakao-mobile\">·
💬 카카오 상담하기·
</a>·
</div>···
<script src=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js\" defer></script>·
<script src=\"/taxbaik/js/site.js\" asp-append-version=\"true\" defer></script>·······
</body>·
</html>·
"
 
16 |
17 | const html = await response.text();
> 18 | expect(html).toContain('name="username"');
| ^
19 | expect(html).toContain('name="password"');
20 | expect(html).toContain('admin-login-form');
21 | });
at C:\Temp\taxbaik\tests\e2e\login-test.spec.ts:18:16
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\login-test-Admin-Login-Pag-9c823-ins-the-form-before-JS-runs-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\login-test-Admin-Login-Pag-9c823-ins-the-form-before-JS-runs-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
44) [iPhone 12] › tests\e2e\login-test.spec.ts:23:5 › Admin Login Page - Full Flow Test ──────────
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\login-test-Admin-Login-Page---Full-Flow-Test-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\login-test-Admin-Login-Page---Full-Flow-Test-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
45) [iPhone 12] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
46) [iPhone 12] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\route-isolation-route-isol-340d6-does-not-boot-the-admin-app-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\route-isolation-route-isol-340d6-does-not-boot-the-admin-app-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
47) [iPhone 12] › tests\e2e\route-isolation.spec.ts:14:7 › route isolation › admin login boots the admin app under the admin base path
 
Error: browserType.launch: Executable doesn't exist at C:\Users\kjh20\AppData\Local\ms-playwright\webkit-2227\Playwright.exe
╔═════════════════════════════════════════════════════════════════════════╗
║ Looks like Playwright Test or Playwright was just installed or updated. ║
║ Please run the following command to download new browsers: ║
║ ║
║ npx playwright install ║
║ ║
║ <3 Playwright Team ║
╚═════════════════════════════════════════════════════════════════════════╝
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\route-isolation-route-isol-5a61e-p-under-the-admin-base-path-iPhone-12\trace.zip
Usage:
 
npx playwright show-trace test-results\route-isolation-route-isol-5a61e-p-under-the-admin-base-path-iPhone-12\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
48) [iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
 
Error: expect(locator).toContainText(expected) failed
 
Locator: locator('body')
Timeout: 12000ms
- Expected substring - 1
+ Received string + 40
 
- 세무 프로필
+
+
+ Menu
+ TaxBaik
+ 세무회계 관리 대시보드
+ 공개 사이트
+ 로그아웃
+
+ T
+ TaxBaik
+ 세무 운영 콘솔
+
+ 개요<path d="M0 0h24v24H0z" fill="none"/><path d="M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"/>
+ 대시보드
+
+ 공개 사이트
+ 로그아웃요청한 페이지를 찾을 수 없습니다.
+
+
+
+
+
+ 연결 재설정 중...
+ 새로운 버전으로 업데이트되었습니다.
+ 자동으로 페이지를 새로고침합니다. 잠시만 기다려주세요.
+
+
+
+
+ 관리자 화면을 불러오는 중 오류가 발생했습니다. 브라우저 콘솔 또는 서버 client-logs를 확인하세요.
+ 새로고침
+ 닫기
+
+
+
+
+
+
+
+
 
Call log:
- Expect "toContainText" with timeout 12000ms
- waiting for locator('body')
15 × locator resolved to <body>…</body>
- unexpected value "

Menu
TaxBaik
세무회계 관리 대시보드
공개 사이트
로그아웃
 
T
TaxBaik
세무 운영 콘솔
 
개요<path d="M0 0h24v24H0z" fill="none"/><path d="M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"/>
대시보드
 
공개 사이트
로그아웃요청한 페이지를 찾을 수 없습니다.
 

 


연결 재설정 중...
새로운 버전으로 업데이트되었습니다.
자동으로 페이지를 새로고침합니다. 잠시만 기다려주세요.


 

관리자 화면을 불러오는 중 오류가 발생했습니다. 브라우저 콘솔 또는 서버 client-logs를 확인하세요.
새로고침
닫기

 



 
 
"
 
 
at helpers\admin-auth.ts:98
 
96 | export async function waitForAdminSection(page: Page, headingText: string) {
97 | const hero = page.locator('.admin-page-hero');
> 98 | await expect(page.locator('body')).toContainText(headingText, { timeout: Wait.page });
| ^
99 | await expect(hero).toBeVisible({ timeout: Wait.page });
100 | await expect(hero).toContainText(headingText, { timeout: Wait.page });
101 | await expect(page.getByRole('heading', { name: headingText, exact: true })).toBeVisible({ timeout: Wait.page });
at waitForAdminSection (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:98:38)
at C:\Temp\taxbaik\tests\e2e\admin-crm-pages.spec.ts:21:30
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-43\traces\c44881337532f92971da-588468c755f68dadd045.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
49) [iPad Pro] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 60000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 60000ms
- waiting for locator('.admin-page-hero')
 
 
75 | await expect(page).toHaveURL(/\/taxbaik\/admin\/dashboard$/, { timeout: 20_000 });
76 | // WASM 부팅에 시간이 걸릴 수 있으므로 더 긴 타임아웃 사용
> 77 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 60_000 });
| ^
78 | await expect(page.locator('.admin-page-hero')).toContainText('대시보드');
79 | await expect(page.getByRole('link', { name: /로그아웃/ })).toBeVisible({ timeout: 30_000 });
80 | expect(consoleErrors, 'browser console/page errors').toEqual([]);
at C:\Temp\taxbaik\tests\e2e\admin-login.spec.ts:77:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-45\traces\481c7578028bb96ee688-8f0bec4d85412426b288.network'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
50) [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('input[placeholder*="사용자"]')
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for locator('input[placeholder*="사용자"]')
 
 
11 | await page.goto(`${baseUrl}/admin/login`);
12 | await expect(page.locator('text=관리자 로그인')).toBeVisible();
> 13 | await expect(page.locator('input[placeholder*="사용자"]')).toBeVisible();
| ^
14 | });
15 |
16 | test('Dashboard page loads', async ({ page }) => {
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:13:61
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-46\traces\7ee68a35b274332ffb95-4ba0b267673485ea84d0.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
51) [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-55\traces\7ee68a35b274332ffb95-5ff12d009707f3d213d3.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
16 | test('Dashboard page loads', async ({ page }) => {
17 | await page.goto(`${baseUrl}/admin/login`);
> 18 | await page.fill('input[name="username"]', username);
| ^
19 | await page.fill('input[name="password"]', password);
20 | await page.click('button[type="submit"]');
21 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:18:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
52) [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-77\traces\7ee68a35b274332ffb95-18215b5101d56ed31536.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
31 | test('Blog page loads', async ({ page }) => {
32 | await page.goto(`${baseUrl}/admin/login`);
> 33 | await page.fill('input[name="username"]', username);
| ^
34 | await page.fill('input[name="password"]', password);
35 | await page.click('button[type="submit"]');
36 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:33:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
53) [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-92\traces\7ee68a35b274332ffb95-0f4909ddc2aec6955efd.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
46 | test('Inquiry page loads', async ({ page }) => {
47 | await page.goto(`${baseUrl}/admin/login`);
> 48 | await page.fill('input[name="username"]', username);
| ^
49 | await page.fill('input[name="password"]', password);
50 | await page.click('button[type="submit"]');
51 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:48:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
54) [iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-96\traces\7ee68a35b274332ffb95-40a270058bd2b8113462.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
61 | test('CRM pages load', async ({ page }) => {
62 | await page.goto(`${baseUrl}/admin/login`);
> 63 | await page.fill('input[name="username"]', username);
| ^
64 | await page.fill('input[name="password"]', password);
65 | await page.click('button[type="submit"]');
66 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:63:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
55) [iPad Pro] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
29 | // 2. 대시보드로 이동 및 최초 로드 대기
30 | await page.goto(`${baseUrl}/admin/dashboard`);
> 31 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
32 |
33 | // 3. 각 디바이스별로 뷰포트를 변경하며 검증 (새로고침 없이 초고속 검증)
34 | for (const device of deviceTests) {
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:31:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-48\traces\da7c59ce61d93dc7813a-770409b9fcdf90daf161-recording2.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
56) [iPad Pro] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
89 | await page.setViewportSize({ width: 375, height: 667 });
90 | await page.goto(`${baseUrl}/admin/dashboard`);
> 91 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
92 |
93 | // 모바일에서는 메뉴 토글 버튼이 있어야 함
94 | const menuButton = page.locator('.admin-menu-button');
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:91:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-51\traces\da7c59ce61d93dc7813a-eaa75fcdf9efb149dd19.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
57) [iPad Pro] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
 
TimeoutError: page.waitForSelector: Timeout 30000ms exceeded.
Call log:
- waiting for locator('input[type="text"], textarea, .mud-input-base, .mud-field') to be visible
 
 
107 | await page.setViewportSize({ width: 480, height: 853 });
108 | await page.goto(`${baseUrl}/admin/faqs/create`);
> 109 | await page.waitForSelector('input[type="text"], textarea, .mud-input-base, .mud-field', { timeout: 30_000 });
| ^
110 |
111 | const inputs = page.locator('input[type="text"], textarea, .mud-input-base, .mud-field');
112 | const inputCount = await inputs.count();
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:109:16
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-54\traces\da7c59ce61d93dc7813a-886aa013d83fc75561eb.network'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
58) [iPad Pro] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
137 | await page.setViewportSize(viewport);
138 | await page.goto(`${baseUrl}/admin/dashboard`);
> 139 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
140 |
141 | const logoutButton = page.locator('a:has-text("로그아웃"), button:has-text("로그아웃")').first();
142 | if (await logoutButton.count() > 0) {
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:139:54
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-60\traces\da7c59ce61d93dc7813a-436330bb345d3c6896ba.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
59) [iPad Pro] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first()
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first()
 
 
7 | await page.goto(`${baseUrl}/blog`);
8 | const firstPost = page.locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first();
> 9 | await expect(firstPost).toBeVisible();
| ^
10 | const detailHref = await firstPost.getAttribute('href');
11 | expect(detailHref).toMatch(/^\/taxbaik\/blog\/[a-z0-9-]+$/);
12 | const detailPath = detailHref?.replace('/taxbaik', '') ?? '/blog';
at C:\Temp\taxbaik\tests\e2e\blog-seo.spec.ts:9:29
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-50\traces\1d0d3a59ebe6e0e691d7-22052e60a47249096571.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
60) [iPad Pro] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
 
Error: page.evaluate: Error: login failed: 400 Bad Request
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at loginThroughAdminUi (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:53:30)
at C:\Temp\taxbaik\tests\e2e\blog-validation.spec.ts:26:3
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-52\traces\ab7c3855fc28a1b2454e-6eb3ad0a4da223cfb76a.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
61) [iPad Pro] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.mud-main-content').getByText('문의 관리').first()
Expected: visible
Timeout: 20000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 20000ms
- waiting for locator('.mud-main-content').getByText('문의 관리').first()
 
 
53 | await loginThroughAdminUi(page, baseUrl, username, password);
54 | await navigateInBlazor(page, `${baseUrl}/admin/inquiries`);
> 55 | await expect(page.locator('.mud-main-content').getByText('문의 관리').first()).toBeVisible({ timeout: 20_000 });
| ^
56 | });
57 |
58 | test('submitting the public Contact.cshtml form shows the success message', async ({ page }) => {
at C:\Temp\taxbaik\tests\e2e\contact-submit.spec.ts:55:80
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, copyfile 'C:\Temp\taxbaik\test-results\.playwright-artifacts-49\traces\78ff188543f551bce0b7-23296404445e8a403091-recording4.network' -> 'C:\Temp\taxbaik\test-results\.playwright-artifacts-49\traces\78ff188543f551bce0b7-23296404445e8a403091-recording4-pwnetcopy-1.network'
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, mkdir 'C:\Temp\taxbaik\test-results\.playwright-artifacts-49\traces'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
62) [iPad Pro] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ─────────────────
 
TimeoutError: page.waitForSelector: Timeout 5000ms exceeded.
Call log:
- waiting for locator('.admin-page-hero') to be visible
 
 
11 |
12 | // Wait for page load
> 13 | await page.waitForSelector('.admin-page-hero', { timeout: 5000 });
| ^
14 | await page.waitForTimeout(2000);
15 |
16 | // Check for metric cards
at C:\Temp\taxbaik\tests\e2e\dashboard-check.spec.ts:13:14
 
Error: ENOENT: no such file or directory, unlink 'C:\Temp\taxbaik\test-results\.playwright-artifacts-53\a86f329d9a4c22b94c4b3927995dd73d.zip'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-iPad-Pro\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\dashboard-check-check-dashboard-metrics-iPad-Pro\error-context.md
 
63) [iPad Pro] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
 
Error: page.evaluate: Error: login failed: 400 Bad Request
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at loginThroughAdminUi (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:53:30)
at C:\Temp\taxbaik\tests\e2e\full-admin-pages.spec.ts:10:3
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-iPad-Pro\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-iPad-Pro\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
64) [iPad Pro] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('text=블로그 관리')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('text=블로그 관리')
 
 
39 | // 네비게이션 메뉴 확인
40 | const blogLink = page.locator('text=블로그 관리');
> 41 | await expect(blogLink).toBeVisible({ timeout: 30000 });
| ^
42 | console.log('✓ 블로그 관리 메뉴 표시');
43 |
44 | // 블로그 페이지로 이동
at C:\Temp\taxbaik\tests\e2e\full-user-flow.spec.ts:41:28
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-58\traces\c6681a4a350aa86369bc-70d432ea5f95b6ea8f74.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
65) [iPad Pro] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByText('Detail-1783485797354', { exact: true }).first()
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByText('Detail-1783485797354', { exact: true }).first()
 
 
37 |
38 | await expect(page).toHaveURL(/\/taxbaik\/admin\/inquiries\/\d+$/);
> 39 | await expect(page.getByText(name, { exact: true }).first()).toBeVisible();
| ^
40 | await expect(page.getByText(phone, { exact: true }).first()).toBeVisible();
41 | await expect(page.getByText(message, { exact: true }).first()).toBeVisible();
42 | await expect(page.getByRole('button', { name: '신규' })).toBeVisible();
at C:\Temp\taxbaik\tests\e2e\inquiry-detail.spec.ts:39:65
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, copyfile 'C:\Temp\taxbaik\test-results\.playwright-artifacts-57\traces\0b7ed30a9e279ee14eeb-d807baf4e400acc7b693-recording2.network' -> 'C:\Temp\taxbaik\test-results\.playwright-artifacts-57\traces\0b7ed30a9e279ee14eeb-d807baf4e400acc7b693-recording2-pwnetcopy-1.network'
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-57\traces\0b7ed30a9e279ee14eeb-d807baf4e400acc7b693-recording1.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-iPad-Pro\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
66) [iPad Pro] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
 
Error: expect(received).toContain(expected) // indexOf
 
Expected substring: "name=\"username\""
Received string: "<!DOCTYPE html>·
<html lang=\"ko\">·
<head>·
<meta charset=\"utf-8\" />·
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />·
<title>관리자 로그인</title>·
<meta name=\"description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta name=\"keywords\" content=\"백원숙 세무회계, 세무사, 사업자 기장, 양도소득세, 증여세, 상속세, 종합소득세, 절세 상담, 세무 대리\" />·······
<!-- Open Graph / Facebook -->·
<meta property=\"og:type\" content=\"website\" />·
<meta property=\"og:title\" content=\"관리자 로그인\" />·
<meta property=\"og:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"og:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />·
<meta property=\"og:url\" content=\"https://www.taxbaik.com/taxbaik/\" />·······
<!-- Twitter -->·
<meta property=\"twitter:card\" content=\"summary_large_image\" />·
<meta property=\"twitter:title\" content=\"관리자 로그인\" />·
<meta property=\"twitter:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"twitter:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />···
<!-- 검색엔진 등록용 소유권 인증 메타 태그 (발급받으신 토큰이 있으면 아래 content에 넣어 주시면 됩니다) -->·
<!-- <meta name=\"naver-site-verification\" content=\"네이버_서치어드바이저_토큰_입력\" /> -->·
<!-- <meta name=\"google-site-verification\" content=\"구글_서치콘솔_토큰_입력\" /> -->···
<meta name=\"robots\" content=\"index, follow\" />·
<meta name=\"theme-color\" content=\"#C89D6E\" />·
<link rel=\"icon\" type=\"image/svg+xml\" href=\"/taxbaik/favicon.svg\" />·
<link rel=\"alternate icon\" href=\"/taxbaik/favicon.ico\" />···
<!-- RSS Feed -->·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"백원숙 세무회계 블로그\" href=\"/taxbaik/rss.xml\" />·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"TaxBaik Blog Feed\" href=\"/taxbaik/feed.xml\" />·
<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />·
<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />·
<link rel=\"dns-prefetch\" href=\"https://cdn.jsdelivr.net\" />·
<link href=\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;700&family=Outfit:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\" />·
<link rel=\"canonical\" href=\"http://localhost:5001/taxbaik/admin/login\" />·
<link href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css\" rel=\"stylesheet\" />·
<link rel=\"stylesheet\" href=\"/taxbaik/css/site.css\" asp-append-version=\"true\" />···
<!-- 구조화된 데이터 (JSON-LD Schema Markup) -->·
<script type=\"application/ld+json\">·

\"@context\": \"https://schema.org\",·
\"@type\": \"ProfessionalService\",·
\"name\": \"백원숙 세무회계\",·
\"description\": \"사업자 기장, 부동산 양도세·증여세, 종합소득세 전문 상담 세무사\",·
\"url\": \"https://www.taxbaik.com/taxbaik/\",·
\"telephone\": \"010-4122-8268\",·
\"email\": \"taxbaik5668@gmail.com\",·
\"address\": {·
\"@type\": \"PostalAddress\",·
\"addressCountry\": \"KR\"·
},·
\"sameAs\": [·
\"https://www.instagram.com/taxtory5668/\",·
\"https://pf.kakao.com/_xoxchTX\"·


</script>···
<!-- Google tag (gtag.js) -->·
<script async src=\"https://www.googletagmanager.com/gtag/js?id=G-25KRKY45D7\"></script>·
<script>·
window.dataLayer = window.dataLayer || [];·
function gtag(){dataLayer.push(arguments);}·
gtag('js', new Date());···
gtag('config', 'G-25KRKY45D7');·
</script>·
</head>·
<body class=\"with-mobile-cta\" data-kakao-url=\"https://pf.kakao.com/_xoxchTX\">·
<partial name=\"_Header\" />·
<main role=\"main\" class=\"pb-5\">··········
<section class=\"container py-5\" style=\"max-width: 560px;\">
<div class=\"card shadow-sm border-0\">
<div class=\"card-body p-4 p-md-5\">
<div class=\"mb-4\">
<p class=\"text-uppercase text-muted small mb-1\">TaxBaik Admin</p>
<h1 class=\"h3 fw-bold mb-2\">관리자 로그인</h1>
<p class=\"text-muted mb-0\">로그인 후 대시보드와 관리자 기능을 이용할 수 있습니다.</p>
</div>··
<form id=\"admin-login-form\" method=\"post\" class=\"vstack gap-3\">
<input name=\"__RequestVerificationToken\" type=\"hidden\" value=\"CfDJ8MSeutqIyfZKsHr5RAKz7bMWYo1PhUG5M5DyznIQXuRLU-vNNKIteKPbxrkz82V-HsO-UenmG4Wndy6sW04uv_XjVcBevOb7mYQTzZ57l5uwOYPvwe5G5_n1g8d84M30MZ10ZaLijn-KgaCFdlss4iY\" />
<input type=\"hidden\" id=\"ReturnUrl\" name=\"ReturnUrl\" />·
<div>
<label class=\"form-label\" for=\"Username\">사용자명</label>
<input class=\"form-control\" id=\"Username\" name=\"Username\" value=\"\" autocomplete=\"username\" />
<span class=\"text-danger small\"></span>
</div>·
<div>
<label class=\"form-label\" for=\"Password\">비밀번호</label>
<input class=\"form-control\" id=\"Password\" name=\"Password\" type=\"password\" autocomplete=\"current-password\" />
<span class=\"text-danger small\"></span>
</div>·
<div class=\"form-check\">
<input class=\"form-check-input\" id=\"RememberMe\" name=\"RememberMe\" type=\"checkbox\" value=\"true\" checked=\"checked\" />
<label class=\"form-check-label\" for=\"RememberMe\">로그인 상태 유지</label>
</div>·
<button class=\"btn btn-dark w-100\" id=\"admin-login-submit\" type=\"submit\">
<span>로그인</span>
</button>
</form>·
<p class=\"text-muted small mt-4 mb-0\">
이 페이지는 서버 렌더링 기반입니다. 로그인 성공 후 관리자 웹앱으로 이동합니다.
</p>
</div>
</div>
</section>···
</main>·
<footer class=\"bg-light border-top mt-5 py-5\">·
<div class=\"container\">·
<div class=\"row g-5\">·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">백원숙 세무회계</h6>·
<p class=\"small text-muted\">·
사업자 기장, 부동산 양도세·증여세,<br />·
종합소득세 전문 상담·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">메뉴</h6>·
<ul class=\"list-unstyled small\">·
<li class=\"mb-2\"><a href=\"/taxbaik/\" class=\"text-decoration-none text-muted\">홈</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/about\" class=\"text-decoration-none text-muted\">세무사 소개</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/services\" class=\"text-decoration-none text-muted\">전문 서비스</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/blog\" class=\"text-decoration-none text-muted\">세무 정보</a></li>·
<li><a href=\"/taxbaik/contact\" class=\"text-decoration-none text-muted\">상담 신청</a></li>·
</ul>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">연락처</h6>·
<p class=\"small\">·
📞 <a href=\"tel:010-4122-8268\" class=\"text-decoration-none text-muted\">010-4122-8268</a><br />·
📧 <a href=\"mailto:taxbaik5668@gmail.com\" class=\"text-decoration-none text-muted\">taxbaik5668@gmail.com</a>·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">채널</h6>·
<p class=\"small\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn btn-sm btn-warning me-2\">카카오톡</a>·
<a href=\"https://www.instagram.com/taxtory5668/\" target=\"_blank\" class=\"btn btn-sm btn-outline-secondary\">Instagram</a>·
</p>·
</div>·
</div>·
<hr class=\"my-4\" />·
<div class=\"text-center small text-muted\">·
<p>© 2026 백원숙 세무회계. All rights reserved.</p>·
<div class=\"mb-2\">·
<a href=\"/taxbaik/privacy\" class=\"text-decoration-none text-muted me-2\">개인정보처리방침</a>·
<span class=\"text-muted\">|</span>·
<a href=\"/taxbaik/terms\" class=\"text-decoration-none text-muted ms-2 me-2\">이용약관</a>·
<span class=\"text-muted\">|</span>·
</div>·
<div class=\"mt-2 text-muted\" style=\"font-size: 0.75rem; opacity: 0.6;\">·
vunknown · unknown·
</div>·
</div>·
</div>·
</footer>···
<!-- Mobile Fixed CTA -->·
<div class=\"mobile-cta-bar d-lg-none\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn-kakao-mobile\">·
💬 카카오 상담하기·
</a>·
</div>···
<script src=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js\" defer></script>·
<script src=\"/taxbaik/js/site.js\" asp-append-version=\"true\" defer></script>·······
</body>·
</html>·
"
 
16 |
17 | const html = await response.text();
> 18 | expect(html).toContain('name="username"');
| ^
19 | expect(html).toContain('name="password"');
20 | expect(html).toContain('admin-login-form');
21 | });
at C:\Temp\taxbaik\tests\e2e\login-test.spec.ts:18:16
 
attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\login-test-Admin-Login-Pag-9c823-ins-the-form-before-JS-runs-iPad-Pro\trace.zip
Usage:
 
npx playwright show-trace test-results\login-test-Admin-Login-Pag-9c823-ins-the-form-before-JS-runs-iPad-Pro\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
67) [iPad Pro] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByRole('link', { name: /상담 신청|무료 상담 신청/ })
Expected: visible
Error: strict mode violation: getByRole('link', { name: /상담 신청|무료 상담 신청/ }) resolved to 2 elements:
1) <a href="/taxbaik/contact" class="btn btn-primary btn-lg">상담 신청하기</a> aka getByRole('link', { name: '상담 신청하기' })
2) <a href="/taxbaik/contact" class="text-decoration-none text-muted">상담 신청</a> aka getByRole('link', { name: '상담 신청', exact: true })
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByRole('link', { name: /상담 신청|무료 상담 신청/ })
 
 
10 | await expect(page).not.toHaveTitle(/관리자/);
11 | await expect(page.getByRole('heading', { name: /세금과 자산|백원숙 세무회계/ })).toBeVisible();
> 12 | // 상담 신청 버튼: 첫 번째 "상담 신청하기" 버튼만 선택 (strict mode 위반 방지)
| ^
13 | await expect(page.getByRole('link', { name: '상담 신청하기' })).toBeVisible();
14 | await expect(page.locator('meta[name="description"]')).toHaveAttribute('content', /사업자 기장|부동산|종합소득세/);
15 | await expect(page.getByRole('heading', { name: /상담 과정/ })).toBeVisible();
at C:\Temp\taxbaik\tests\e2e\public-smoke.spec.ts:12:70
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-62\traces\9069cf5df66af74e1237-2f2783f0b169124e1d32.network'
 
Error: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-62\d94800b423b32bf1c2bb3ddf72374f47.zip'
 
Test timeout of 180000ms exceeded.
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-iPad-Pro\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-iPad-Pro\error-context.md
 
68) [Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
 
Error: expect(locator).toContainText(expected) failed
 
Locator: locator('body')
Timeout: 12000ms
- Expected substring - 1
+ Received string + 40
 
- 세무 프로필
+
+
+ Menu
+ TaxBaik
+ 세무회계 관리 대시보드
+ 공개 사이트
+ 로그아웃
+
+ T
+ TaxBaik
+ 세무 운영 콘솔
+
+ 개요<path d="M0 0h24v24H0z" fill="none"/><path d="M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"/>
+ 대시보드
+
+ 공개 사이트
+ 로그아웃요청한 페이지를 찾을 수 없습니다.
+
+
+
+
+
+ 연결 재설정 중...
+ 새로운 버전으로 업데이트되었습니다.
+ 자동으로 페이지를 새로고침합니다. 잠시만 기다려주세요.
+
+
+
+
+ 관리자 화면을 불러오는 중 오류가 발생했습니다. 브라우저 콘솔 또는 서버 client-logs를 확인하세요.
+ 새로고침
+ 닫기
+
+
+
+
+
+
+
+
 
Call log:
- Expect "toContainText" with timeout 12000ms
- waiting for locator('body')
15 × locator resolved to <body>…</body>
- unexpected value "

Menu
TaxBaik
세무회계 관리 대시보드
공개 사이트
로그아웃
 
T
TaxBaik
세무 운영 콘솔
 
개요<path d="M0 0h24v24H0z" fill="none"/><path d="M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"/>
대시보드
 
공개 사이트
로그아웃요청한 페이지를 찾을 수 없습니다.
 

 


연결 재설정 중...
새로운 버전으로 업데이트되었습니다.
자동으로 페이지를 새로고침합니다. 잠시만 기다려주세요.


 

관리자 화면을 불러오는 중 오류가 발생했습니다. 브라우저 콘솔 또는 서버 client-logs를 확인하세요.
새로고침
닫기

 



 
 
"
 
 
at helpers\admin-auth.ts:98
 
96 | export async function waitForAdminSection(page: Page, headingText: string) {
97 | const hero = page.locator('.admin-page-hero');
> 98 | await expect(page.locator('body')).toContainText(headingText, { timeout: Wait.page });
| ^
99 | await expect(hero).toBeVisible({ timeout: Wait.page });
100 | await expect(hero).toContainText(headingText, { timeout: Wait.page });
101 | await expect(page.getByRole('heading', { name: headingText, exact: true })).toBeVisible({ timeout: Wait.page });
at waitForAdminSection (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:98:38)
at C:\Temp\taxbaik\tests\e2e\admin-crm-pages.spec.ts:21:30
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Galaxy-S9-\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Galaxy-S9-\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-crm-pages-admin-CRM--6eedf-ds-with-grid-and-add-button-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
69) [Galaxy S9+] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 60000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 60000ms
- waiting for locator('.admin-page-hero')
 
 
75 | await expect(page).toHaveURL(/\/taxbaik\/admin\/dashboard$/, { timeout: 20_000 });
76 | // WASM 부팅에 시간이 걸릴 수 있으므로 더 긴 타임아웃 사용
> 77 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 60_000 });
| ^
78 | await expect(page.locator('.admin-page-hero')).toContainText('대시보드');
79 | await expect(page.getByRole('link', { name: /로그아웃/ })).toBeVisible({ timeout: 30_000 });
80 | expect(consoleErrors, 'browser console/page errors').toEqual([]);
at C:\Temp\taxbaik\tests\e2e\admin-login.spec.ts:77:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-69\traces\481c7578028bb96ee688-21efb93ebc280c233b4f.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-login-admin-authenti-8d2e4-er-UI-and-reaches-dashboard-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
70) [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('input[placeholder*="사용자"]')
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for locator('input[placeholder*="사용자"]')
 
 
11 | await page.goto(`${baseUrl}/admin/login`);
12 | await expect(page.locator('text=관리자 로그인')).toBeVisible();
> 13 | await expect(page.locator('input[placeholder*="사용자"]')).toBeVisible();
| ^
14 | });
15 |
16 | test('Dashboard page loads', async ({ page }) => {
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:13:61
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-67\traces\7ee68a35b274332ffb95-453b44d0af829cd0f028.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Login-page-loads-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
71) [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-75\traces\7ee68a35b274332ffb95-7fc3ff5c17b268218071.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
16 | test('Dashboard page loads', async ({ page }) => {
17 | await page.goto(`${baseUrl}/admin/login`);
> 18 | await page.fill('input[name="username"]', username);
| ^
19 | await page.fill('input[name="password"]', password);
20 | await page.click('button[type="submit"]');
21 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:18:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-P-45f66-Manual-Dashboard-page-loads-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
72) [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-91\traces\7ee68a35b274332ffb95-7396043c428b03ef9c5f.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
31 | test('Blog page loads', async ({ page }) => {
32 | await page.goto(`${baseUrl}/admin/login`);
> 33 | await page.fill('input[name="username"]', username);
| ^
34 | await page.fill('input[name="password"]', password);
35 | await page.click('button[type="submit"]');
36 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:33:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Blog-page-loads-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
73) [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-95\traces\7ee68a35b274332ffb95-08f8f568fc9a820f3064.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
46 | test('Inquiry page loads', async ({ page }) => {
47 | await page.goto(`${baseUrl}/admin/login`);
> 48 | await page.fill('input[name="username"]', username);
| ^
49 | await page.fill('input[name="password"]', password);
50 | await page.click('button[type="submit"]');
51 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:48:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-Inquiry-page-loads-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
74) [Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-97\traces\7ee68a35b274332ffb95-d91e7d42ac0cbdee3499.trace'
 
Error: page.fill: Test ended.
Call log:
- waiting for locator('input[name="username"]')
 
 
61 | test('CRM pages load', async ({ page }) => {
62 | await page.goto(`${baseUrl}/admin/login`);
> 63 | await page.fill('input[name="username"]', username);
| ^
64 | await page.fill('input[name="password"]', password);
65 | await page.click('button[type="submit"]');
66 | await navigateInBlazor(page, `${baseUrl}/admin/dashboard`);
at C:\Temp\taxbaik\tests\e2e\admin-pages-manual.spec.ts:63:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-pages-manual-Admin-Pages-E2E-Manual-CRM-pages-load-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
75) [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
29 | // 2. 대시보드로 이동 및 최초 로드 대기
30 | await page.goto(`${baseUrl}/admin/dashboard`);
> 31 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
32 |
33 | // 3. 각 디바이스별로 뷰포트를 변경하며 검증 (새로고침 없이 초고속 검증)
34 | for (const device of deviceTests) {
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:31:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-68\traces\da7c59ce61d93dc7813a-f85eee42ee4dd3d6cf11-recording2.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-3fad2--correctly-on-all-viewports-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
76) [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
89 | await page.setViewportSize({ width: 375, height: 667 });
90 | await page.goto(`${baseUrl}/admin/dashboard`);
> 91 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
92 |
93 | // 모바일에서는 메뉴 토글 버튼이 있어야 함
94 | const menuButton = page.locator('.admin-menu-button');
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:91:52
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-71\traces\da7c59ce61d93dc7813a-ebce691dd966ad9579b3.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-2c19b-er-responsiveness-on-mobile-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
77) [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
 
TimeoutError: page.waitForSelector: Timeout 30000ms exceeded.
Call log:
- waiting for locator('input[type="text"], textarea, .mud-input-base, .mud-field') to be visible
 
 
107 | await page.setViewportSize({ width: 480, height: 853 });
108 | await page.goto(`${baseUrl}/admin/faqs/create`);
> 109 | await page.waitForSelector('input[type="text"], textarea, .mud-input-base, .mud-field', { timeout: 30_000 });
| ^
110 |
111 | const inputs = page.locator('input[type="text"], textarea, .mud-input-base, .mud-field');
112 | const inputCount = await inputs.count();
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:109:16
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-74\traces\da7c59ce61d93dc7813a-472ee230003a92227de5.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-441c6-ts-are-accessible-on-mobile-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
78) [Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.admin-page-hero')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('.admin-page-hero')
 
 
137 | await page.setViewportSize(viewport);
138 | await page.goto(`${baseUrl}/admin/dashboard`);
> 139 | await expect(page.locator('.admin-page-hero')).toBeVisible({ timeout: 30_000 });
| ^
140 |
141 | const logoutButton = page.locator('a:has-text("로그아웃"), button:has-text("로그아웃")').first();
142 | if (await logoutButton.count() > 0) {
at C:\Temp\taxbaik\tests\e2e\admin-responsive.spec.ts:139:54
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-78\traces\da7c59ce61d93dc7813a-a6fd3bff243809a5758a.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\admin-responsive-admin-res-075ff--clickable-on-all-viewports-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
79) [Galaxy S9+] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first()
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first()
 
 
7 | await page.goto(`${baseUrl}/blog`);
8 | const firstPost = page.locator('a[href^="/taxbaik/blog/"]').filter({ hasText: '글 내용 보기' }).first();
> 9 | await expect(firstPost).toBeVisible();
| ^
10 | const detailHref = await firstPost.getAttribute('href');
11 | expect(detailHref).toMatch(/^\/taxbaik\/blog\/[a-z0-9-]+$/);
12 | const detailPath = detailHref?.replace('/taxbaik', '') ?? '/blog';
at C:\Temp\taxbaik\tests\e2e\blog-seo.spec.ts:9:29
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-72\traces\1d0d3a59ebe6e0e691d7-f489ae8d92f2251e004c.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\blog-seo-blog-seo-exposes--62f67-onical-on-blog-detail-pages-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
80) [Galaxy S9+] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
 
Error: page.evaluate: Error: login failed: 400 Bad Request
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at loginThroughAdminUi (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:53:30)
at C:\Temp\taxbaik\tests\e2e\blog-validation.spec.ts:26:3
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-70\traces\ab7c3855fc28a1b2454e-00f8d78799a2a1a7c350-recording2.network'
 
Error: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-70\a75a7fe4ffeac842b6a1eb85501bcb93.zip'
 
Test timeout of 180000ms exceeded.
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\blog-validation-Blog-Manag-4f5b2-ow---Real-Domain-Validation-Galaxy-S9-\error-context.md
 
81) [Galaxy S9+] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('.mud-main-content').getByText('문의 관리').first()
Expected: visible
Timeout: 20000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 20000ms
- waiting for locator('.mud-main-content').getByText('문의 관리').first()
 
 
53 | await loginThroughAdminUi(page, baseUrl, username, password);
54 | await navigateInBlazor(page, `${baseUrl}/admin/inquiries`);
> 55 | await expect(page.locator('.mud-main-content').getByText('문의 관리').first()).toBeVisible({ timeout: 20_000 });
| ^
56 | });
57 |
58 | test('submitting the public Contact.cshtml form shows the success message', async ({ page }) => {
at C:\Temp\taxbaik\tests\e2e\contact-submit.spec.ts:55:80
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, copyfile 'C:\Temp\taxbaik\test-results\.playwright-artifacts-73\traces\78ff188543f551bce0b7-d3ea7cbe93a14842d632-recording2.network' -> 'C:\Temp\taxbaik\test-results\.playwright-artifacts-73\traces\78ff188543f551bce0b7-d3ea7cbe93a14842d632-recording2-pwnetcopy-1.network'
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-73\traces\78ff188543f551bce0b7-d3ea7cbe93a14842d632-recording1.trace'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\contact-submit-contact-sub-0fd92--and-shows-it-in-admin-list-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
82) [Galaxy S9+] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message
 
Test timeout of 180000ms exceeded.
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-76\traces\78ff188543f551bce0b7-dd1436a872a53f2b1272.trace'
 
Error: page.check: Test ended.
Call log:
- waiting for locator('#agree')
- locator resolved to <input id="agree" required="" name="Agree" value="true" type="checkbox" class="form-check-input"/>
- attempting click action
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <form method="post" id="contactForm" data-gtm-form-interact-id="0">…</form> intercepts pointer events
- retrying click action
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <a target="_blank" class="btn-kakao-mobile" rel="noopener noreferrer" href="https://pf.kakao.com/_xoxchTX">↵ 💬 카카오 상담하기↵ </a> from <div class="mobile-cta-bar d-lg-none">…</div> subtree intercepts pointer events
- retrying click action
- waiting 20ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <form method="post" id="contactForm" data-gtm-form-interact-id="0">…</form> intercepts pointer events
2 × retrying click action
- waiting 100ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <div class="container py-5">…</div> intercepts pointer events
83 × retrying click action
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <a target="_blank" class="btn-kakao-mobile" rel="noopener noreferrer" href="https://pf.kakao.com/_xoxchTX">↵ 💬 카카오 상담하기↵ </a> from <div class="mobile-cta-bar d-lg-none">…</div> subtree intercepts pointer events
- retrying click action
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <form method="post" id="contactForm" data-gtm-form-interact-id="0">…</form> intercepts pointer events
- retrying click action
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <div class="container py-5">…</div> intercepts pointer events
- retrying click action
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <div class="container py-5">…</div> intercepts pointer events
- retrying click action
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <a target="_blank" class="btn-kakao-mobile" rel="noopener noreferrer" href="https://pf.kakao.com/_xoxchTX">↵ 💬 카카오 상담하기↵ </a> from <div class="mobile-cta-bar d-lg-none">…</div> subtree intercepts pointer events
- retrying click action
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <form method="post" id="contactForm" data-gtm-form-interact-id="0">…</form> intercepts pointer events
- retrying click action
- waiting 500ms
 
 
70 | await page.fill('#email', `contact-e2e-${stamp}@example.com`);
71 | await page.fill('#message', 'Playwright로 Contact.cshtml 폼을 직접 제출한 테스트입니다.');
> 72 | await page.check('#agree');
| ^
73 | await page.click('button[type="submit"]');
74 |
75 | await expect(page.locator('#contact-success')).toBeVisible({ timeout: 15_000 });
at C:\Temp\taxbaik\tests\e2e\contact-submit.spec.ts:72:16
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-024b3-m-shows-the-success-message-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\contact-submit-contact-sub-024b3-m-shows-the-success-message-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\contact-submit-contact-sub-024b3-m-shows-the-success-message-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\contact-submit-contact-sub-024b3-m-shows-the-success-message-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
83) [Galaxy S9+] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ───────────────
 
TimeoutError: page.waitForSelector: Timeout 5000ms exceeded.
Call log:
- waiting for locator('.admin-page-hero') to be visible
 
 
11 |
12 | // Wait for page load
> 13 | await page.waitForSelector('.admin-page-hero', { timeout: 5000 });
| ^
14 | await page.waitForTimeout(2000);
15 |
16 | // Check for metric cards
at C:\Temp\taxbaik\tests\e2e\dashboard-check.spec.ts:13:14
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-Galaxy-S9-\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\dashboard-check-check-dashboard-metrics-Galaxy-S9-\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\dashboard-check-check-dashboard-metrics-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\dashboard-check-check-dashboard-metrics-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
84) [Galaxy S9+] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
 
Error: page.evaluate: Error: login failed: 400 Bad Request
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at eval (eval at evaluate (:290:30), <anonymous>:17:15)
at async <anonymous>:316:30
at loginThroughAdminUi (C:\Temp\taxbaik\tests\e2e\helpers\admin-auth.ts:53:30)
at C:\Temp\taxbaik\tests\e2e\full-admin-pages.spec.ts:10:3
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Galaxy-S9-\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Galaxy-S9-\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\full-admin-pages-productio-d8737--admin-pages-load-correctly-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
85) [Galaxy S9+] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
 
Error: expect(locator).toBeVisible() failed
 
Locator: locator('text=블로그 관리')
Expected: visible
Timeout: 30000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 30000ms
- waiting for locator('text=블로그 관리')
 
 
39 | // 네비게이션 메뉴 확인
40 | const blogLink = page.locator('text=블로그 관리');
> 41 | await expect(blogLink).toBeVisible({ timeout: 30000 });
| ^
42 | console.log('✓ 블로그 관리 메뉴 표시');
43 |
44 | // 블로그 페이지로 이동
at C:\Temp\taxbaik\tests\e2e\full-user-flow.spec.ts:41:28
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-81\traces\c6681a4a350aa86369bc-e1542725c672045325c2.network'
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-Galaxy-S9-\error-context.md
 
attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\full-user-flow-프로덕션-사용자-흐름-테스트-홈페이지-→-로그인-→-대시보드-→-블로그-CRUD-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
86) [Galaxy S9+] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByText('Detail-1783486021956', { exact: true }).first()
Expected: visible
Timeout: 90000ms
Error: element(s) not found
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByText('Detail-1783486021956', { exact: true }).first()
 
 
37 |
38 | await expect(page).toHaveURL(/\/taxbaik\/admin\/inquiries\/\d+$/);
> 39 | await expect(page.getByText(name, { exact: true }).first()).toBeVisible();
| ^
40 | await expect(page.getByText(phone, { exact: true }).first()).toBeVisible();
41 | await expect(page.getByText(message, { exact: true }).first()).toBeVisible();
42 | await expect(page.getByRole('button', { name: '신규' })).toBeVisible();
at C:\Temp\taxbaik\tests\e2e\inquiry-detail.spec.ts:39:65
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-82\traces\0b7ed30a9e279ee14eeb-f931fbc30ff864267ded-recording1.network'
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-82\traces\0b7ed30a9e279ee14eeb-f931fbc30ff864267ded.trace'
 
Error: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-82\8fe3eafde3dfdc300336d87f9a25833d.zip'
 
Test timeout of 180000ms exceeded.
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\inquiry-detail-inquiry-det-43d69-uiry-and-admin-action-links-Galaxy-S9-\error-context.md
 
87) [Galaxy S9+] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
 
Error: expect(received).toContain(expected) // indexOf
 
Expected substring: "name=\"username\""
Received string: "<!DOCTYPE html>·
<html lang=\"ko\">·
<head>·
<meta charset=\"utf-8\" />·
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />·
<title>관리자 로그인</title>·
<meta name=\"description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta name=\"keywords\" content=\"백원숙 세무회계, 세무사, 사업자 기장, 양도소득세, 증여세, 상속세, 종합소득세, 절세 상담, 세무 대리\" />·······
<!-- Open Graph / Facebook -->·
<meta property=\"og:type\" content=\"website\" />·
<meta property=\"og:title\" content=\"관리자 로그인\" />·
<meta property=\"og:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"og:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />·
<meta property=\"og:url\" content=\"https://www.taxbaik.com/taxbaik/\" />·······
<!-- Twitter -->·
<meta property=\"twitter:card\" content=\"summary_large_image\" />·
<meta property=\"twitter:title\" content=\"관리자 로그인\" />·
<meta property=\"twitter:description\" content=\"관리자 로그인 페이지입니다.\" />·
<meta property=\"twitter:image\" content=\"https://www.taxbaik.com/taxbaik/images/og-image.jpg\" />···
<!-- 검색엔진 등록용 소유권 인증 메타 태그 (발급받으신 토큰이 있으면 아래 content에 넣어 주시면 됩니다) -->·
<!-- <meta name=\"naver-site-verification\" content=\"네이버_서치어드바이저_토큰_입력\" /> -->·
<!-- <meta name=\"google-site-verification\" content=\"구글_서치콘솔_토큰_입력\" /> -->···
<meta name=\"robots\" content=\"index, follow\" />·
<meta name=\"theme-color\" content=\"#C89D6E\" />·
<link rel=\"icon\" type=\"image/svg+xml\" href=\"/taxbaik/favicon.svg\" />·
<link rel=\"alternate icon\" href=\"/taxbaik/favicon.ico\" />···
<!-- RSS Feed -->·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"백원숙 세무회계 블로그\" href=\"/taxbaik/rss.xml\" />·
<link rel=\"alternate\" type=\"application/rss+xml\" title=\"TaxBaik Blog Feed\" href=\"/taxbaik/feed.xml\" />·
<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />·
<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />·
<link rel=\"dns-prefetch\" href=\"https://cdn.jsdelivr.net\" />·
<link href=\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;700&family=Outfit:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\" />·
<link rel=\"canonical\" href=\"http://localhost:5001/taxbaik/admin/login\" />·
<link href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css\" rel=\"stylesheet\" />·
<link rel=\"stylesheet\" href=\"/taxbaik/css/site.css\" asp-append-version=\"true\" />···
<!-- 구조화된 데이터 (JSON-LD Schema Markup) -->·
<script type=\"application/ld+json\">·

\"@context\": \"https://schema.org\",·
\"@type\": \"ProfessionalService\",·
\"name\": \"백원숙 세무회계\",·
\"description\": \"사업자 기장, 부동산 양도세·증여세, 종합소득세 전문 상담 세무사\",·
\"url\": \"https://www.taxbaik.com/taxbaik/\",·
\"telephone\": \"010-4122-8268\",·
\"email\": \"taxbaik5668@gmail.com\",·
\"address\": {·
\"@type\": \"PostalAddress\",·
\"addressCountry\": \"KR\"·
},·
\"sameAs\": [·
\"https://www.instagram.com/taxtory5668/\",·
\"https://pf.kakao.com/_xoxchTX\"·


</script>···
<!-- Google tag (gtag.js) -->·
<script async src=\"https://www.googletagmanager.com/gtag/js?id=G-25KRKY45D7\"></script>·
<script>·
window.dataLayer = window.dataLayer || [];·
function gtag(){dataLayer.push(arguments);}·
gtag('js', new Date());···
gtag('config', 'G-25KRKY45D7');·
</script>·
</head>·
<body class=\"with-mobile-cta\" data-kakao-url=\"https://pf.kakao.com/_xoxchTX\">·
<partial name=\"_Header\" />·
<main role=\"main\" class=\"pb-5\">··········
<section class=\"container py-5\" style=\"max-width: 560px;\">
<div class=\"card shadow-sm border-0\">
<div class=\"card-body p-4 p-md-5\">
<div class=\"mb-4\">
<p class=\"text-uppercase text-muted small mb-1\">TaxBaik Admin</p>
<h1 class=\"h3 fw-bold mb-2\">관리자 로그인</h1>
<p class=\"text-muted mb-0\">로그인 후 대시보드와 관리자 기능을 이용할 수 있습니다.</p>
</div>··
<form id=\"admin-login-form\" method=\"post\" class=\"vstack gap-3\">
<input name=\"__RequestVerificationToken\" type=\"hidden\" value=\"CfDJ8MSeutqIyfZKsHr5RAKz7bOUWYZleo1lAehz5rRZieA4zDJumAtga0em9p1TYXpEnwvVp2N5hzjobv1HuO28_gMmoDbtuHplGIZVBrum3L327elA-9yiFtVkZ69U7QDmhLmWIoS6GaoQ8_NFjpVx-lk\" />
<input type=\"hidden\" id=\"ReturnUrl\" name=\"ReturnUrl\" />·
<div>
<label class=\"form-label\" for=\"Username\">사용자명</label>
<input class=\"form-control\" id=\"Username\" name=\"Username\" value=\"\" autocomplete=\"username\" />
<span class=\"text-danger small\"></span>
</div>·
<div>
<label class=\"form-label\" for=\"Password\">비밀번호</label>
<input class=\"form-control\" id=\"Password\" name=\"Password\" type=\"password\" autocomplete=\"current-password\" />
<span class=\"text-danger small\"></span>
</div>·
<div class=\"form-check\">
<input class=\"form-check-input\" id=\"RememberMe\" name=\"RememberMe\" type=\"checkbox\" value=\"true\" checked=\"checked\" />
<label class=\"form-check-label\" for=\"RememberMe\">로그인 상태 유지</label>
</div>·
<button class=\"btn btn-dark w-100\" id=\"admin-login-submit\" type=\"submit\">
<span>로그인</span>
</button>
</form>·
<p class=\"text-muted small mt-4 mb-0\">
이 페이지는 서버 렌더링 기반입니다. 로그인 성공 후 관리자 웹앱으로 이동합니다.
</p>
</div>
</div>
</section>···
</main>·
<footer class=\"bg-light border-top mt-5 py-5\">·
<div class=\"container\">·
<div class=\"row g-5\">·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">백원숙 세무회계</h6>·
<p class=\"small text-muted\">·
사업자 기장, 부동산 양도세·증여세,<br />·
종합소득세 전문 상담·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">메뉴</h6>·
<ul class=\"list-unstyled small\">·
<li class=\"mb-2\"><a href=\"/taxbaik/\" class=\"text-decoration-none text-muted\">홈</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/about\" class=\"text-decoration-none text-muted\">세무사 소개</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/services\" class=\"text-decoration-none text-muted\">전문 서비스</a></li>·
<li class=\"mb-2\"><a href=\"/taxbaik/blog\" class=\"text-decoration-none text-muted\">세무 정보</a></li>·
<li><a href=\"/taxbaik/contact\" class=\"text-decoration-none text-muted\">상담 신청</a></li>·
</ul>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">연락처</h6>·
<p class=\"small\">·
📞 <a href=\"tel:010-4122-8268\" class=\"text-decoration-none text-muted\">010-4122-8268</a><br />·
📧 <a href=\"mailto:taxbaik5668@gmail.com\" class=\"text-decoration-none text-muted\">taxbaik5668@gmail.com</a>·
</p>·
</div>·
<div class=\"col-md-3\">·
<h6 class=\"fw-bold mb-3\">채널</h6>·
<p class=\"small\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn btn-sm btn-warning me-2\">카카오톡</a>·
<a href=\"https://www.instagram.com/taxtory5668/\" target=\"_blank\" class=\"btn btn-sm btn-outline-secondary\">Instagram</a>·
</p>·
</div>·
</div>·
<hr class=\"my-4\" />·
<div class=\"text-center small text-muted\">·
<p>© 2026 백원숙 세무회계. All rights reserved.</p>·
<div class=\"mb-2\">·
<a href=\"/taxbaik/privacy\" class=\"text-decoration-none text-muted me-2\">개인정보처리방침</a>·
<span class=\"text-muted\">|</span>·
<a href=\"/taxbaik/terms\" class=\"text-decoration-none text-muted ms-2 me-2\">이용약관</a>·
<span class=\"text-muted\">|</span>·
</div>·
<div class=\"mt-2 text-muted\" style=\"font-size: 0.75rem; opacity: 0.6;\">·
vunknown · unknown·
</div>·
</div>·
</div>·
</footer>···
<!-- Mobile Fixed CTA -->·
<div class=\"mobile-cta-bar d-lg-none\">·
<a href=\"https://pf.kakao.com/_xoxchTX\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"btn-kakao-mobile\">·
💬 카카오 상담하기·
</a>·
</div>···
<script src=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js\" defer></script>·
<script src=\"/taxbaik/js/site.js\" asp-append-version=\"true\" defer></script>·······
</body>·
</html>·
"
 
16 |
17 | const html = await response.text();
> 18 | expect(html).toContain('name="username"');
| ^
19 | expect(html).toContain('name="password"');
20 | expect(html).toContain('admin-login-form');
21 | });
at C:\Temp\taxbaik\tests\e2e\login-test.spec.ts:18:16
 
Error: apiRequestContext._wrapApiCall: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-83\traces\bdde59c310911dcc8229-8440797333d01dae68e5.network'
 
Error: ENOENT: no such file or directory, open 'C:\Temp\taxbaik\test-results\.playwright-artifacts-83\5ba7a673b0f25a86fbef667ee4be6df9.zip'
 
Test timeout of 180000ms exceeded.
 
88) [Galaxy S9+] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByRole('link', { name: /상담 신청|무료 상담 신청/ })
Expected: visible
Error: strict mode violation: getByRole('link', { name: /상담 신청|무료 상담 신청/ }) resolved to 2 elements:
1) <a href="/taxbaik/contact" class="btn btn-primary btn-lg">상담 신청하기</a> aka getByRole('link', { name: '상담 신청하기' })
2) <a href="/taxbaik/contact" class="text-decoration-none text-muted">상담 신청</a> aka getByRole('link', { name: '상담 신청', exact: true })
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByRole('link', { name: /상담 신청|무료 상담 신청/ })
 
 
10 | await expect(page).not.toHaveTitle(/관리자/);
11 | await expect(page.getByRole('heading', { name: /세금과 자산|백원숙 세무회계/ })).toBeVisible();
> 12 | // 상담 신청 버튼: 첫 번째 "상담 신청하기" 버튼만 선택 (strict mode 위반 방지)
| ^
13 | await expect(page.getByRole('link', { name: '상담 신청하기' })).toBeVisible();
14 | await expect(page.locator('meta[name="description"]')).toHaveAttribute('content', /사업자 기장|부동산|종합소득세/);
15 | await expect(page.getByRole('heading', { name: /상담 과정/ })).toBeVisible();
at C:\Temp\taxbaik\tests\e2e\public-smoke.spec.ts:12:70
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Galaxy-S9-\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Galaxy-S9-\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
89) [Galaxy S9+] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByRole('link', { name: /카카오 상담하기|카카오채널 문의/ })
Expected: visible
Error: strict mode violation: getByRole('link', { name: /카카오 상담하기|카카오채널 문의/ }) resolved to 2 elements:
1) <a target="_blank" rel="noopener noreferrer" onclick="openKakao(event)" href="https://pf.kakao.com/_xoxchTX" class="btn btn-outline-primary btn-lg">↵ 💬 카카오채널 문의↵ …</a> aka getByRole('link', { name: '💬 카카오채널 문의' })
2) <a target="_blank" class="btn-kakao-mobile" rel="noopener noreferrer" href="https://pf.kakao.com/_xoxchTX">↵ 💬 카카오 상담하기↵ </a> aka getByRole('link', { name: '💬 카카오 상담하기' })
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByRole('link', { name: /카카오 상담하기|카카오채널 문의/ })
 
 
9 | await expect(page).toHaveTitle(/백원숙 세무회계/);
10 | await expect(page.getByRole('heading', { name: /상담 과정/ })).toBeVisible();
> 11 | await expect(page.getByRole('link', { name: /카카오 상담하기|카카오채널 문의/ })).toBeVisible();
| ^
12 | });
13 |
14 | test('admin login boots the admin app under the admin base path', async ({ page }) => {
at C:\Temp\taxbaik\tests\e2e\route-isolation.spec.ts:11:73
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\route-isolation-route-isol-340d6-does-not-boot-the-admin-app-Galaxy-S9-\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\route-isolation-route-isol-340d6-does-not-boot-the-admin-app-Galaxy-S9-\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\route-isolation-route-isol-340d6-does-not-boot-the-admin-app-Galaxy-S9-\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\route-isolation-route-isol-340d6-does-not-boot-the-admin-app-Galaxy-S9-\trace.zip
Usage:
 
npx playwright show-trace test-results\route-isolation-route-isol-340d6-does-not-boot-the-admin-app-Galaxy-S9-\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
90) [Public Smoke] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
 
Error: expect(locator).toBeVisible() failed
 
Locator: getByRole('link', { name: /상담 신청|무료 상담 신청/ })
Expected: visible
Error: strict mode violation: getByRole('link', { name: /상담 신청|무료 상담 신청/ }) resolved to 2 elements:
1) <a href="/taxbaik/contact" class="btn btn-primary btn-lg">상담 신청하기</a> aka getByRole('link', { name: '상담 신청하기' })
2) <a href="/taxbaik/contact" class="text-decoration-none text-muted">상담 신청</a> aka getByRole('link', { name: '상담 신청', exact: true })
 
Call log:
- Expect "toBeVisible" with timeout 90000ms
- waiting for getByRole('link', { name: /상담 신청|무료 상담 신청/ })
 
 
10 | await expect(page).not.toHaveTitle(/관리자/);
11 | await expect(page.getByRole('heading', { name: /세금과 자산|백원숙 세무회계/ })).toBeVisible();
> 12 | // 상담 신청 버튼: 첫 번째 "상담 신청하기" 버튼만 선택 (strict mode 위반 방지)
| ^
13 | await expect(page.getByRole('link', { name: '상담 신청하기' })).toBeVisible();
14 | await expect(page.locator('meta[name="description"]')).toHaveAttribute('content', /사업자 기장|부동산|종합소득세/);
15 | await expect(page.getByRole('heading', { name: /상담 과정/ })).toBeVisible();
at C:\Temp\taxbaik\tests\e2e\public-smoke.spec.ts:12:70
 
attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Public-Smoke\test-failed-1.png
────────────────────────────────────────────────────────────────────────────────────────────────
 
attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Public-Smoke\video.webm
────────────────────────────────────────────────────────────────────────────────────────────────
 
Error Context: test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Public-Smoke\error-context.md
 
attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Public-Smoke\trace.zip
Usage:
 
npx playwright show-trace test-results\public-smoke-public-smoke--d5132-ublic-pages-with-SEO-basics-Public-Smoke\trace.zip
 
────────────────────────────────────────────────────────────────────────────────────────────────
 
90 failed
[Desktop Chrome] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
[Desktop Chrome] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
[Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
[Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
[Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
[Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
[Desktop Chrome] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
[Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
[Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
[Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
[Desktop Chrome] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
[Desktop Chrome] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
[Desktop Chrome] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
[Desktop Chrome] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
[Desktop Chrome] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ─────────────
[Desktop Chrome] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
[Desktop Chrome] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
[Desktop Chrome] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
[Desktop Chrome] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
[Desktop Chrome] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
[iPhone 12] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
[iPhone 12] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
[iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
[iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
[iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
[iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
[iPhone 12] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
[iPhone 12] › tests\e2e\admin-password-change.spec.ts:10:7 › admin password change › changes password through the real admin UI
[iPhone 12] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
[iPhone 12] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
[iPhone 12] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
[iPhone 12] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
[iPhone 12] › tests\e2e\admin-smoke.spec.ts:10:7 › admin smoke › @smoke logs in and lands on dashboard without circuit errors
[iPhone 12] › tests\e2e\blog-crud.spec.ts:9:7 › blog CRUD operations › complete blog creation, read, update, delete flow
[iPhone 12] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
[iPhone 12] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
[iPhone 12] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
[iPhone 12] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message
[iPhone 12] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ──────────────────
[iPhone 12] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
[iPhone 12] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
[iPhone 12] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
[iPhone 12] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
[iPhone 12] › tests\e2e\login-test.spec.ts:23:5 › Admin Login Page - Full Flow Test ────────────
[iPhone 12] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
[iPhone 12] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app
[iPhone 12] › tests\e2e\route-isolation.spec.ts:14:7 › route isolation › admin login boots the admin app under the admin base path
[iPad Pro] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
[iPad Pro] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
[iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
[iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
[iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
[iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
[iPad Pro] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
[iPad Pro] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
[iPad Pro] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
[iPad Pro] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
[iPad Pro] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
[iPad Pro] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
[iPad Pro] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
[iPad Pro] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
[iPad Pro] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ───────────────────
[iPad Pro] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
[iPad Pro] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
[iPad Pro] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
[iPad Pro] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
[iPad Pro] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
[Galaxy S9+] › tests\e2e\admin-crm-pages.spec.ts:18:7 › admin CRM pages › TaxProfiles page loads with grid and add button
[Galaxy S9+] › tests\e2e\admin-login.spec.ts:8:7 › admin authentication › logs in through the real browser UI and reaches dashboard
[Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:10:7 › Admin Pages E2E (Manual) › Login page loads
[Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:16:7 › Admin Pages E2E (Manual) › Dashboard page loads
[Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:31:7 › Admin Pages E2E (Manual) › Blog page loads
[Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:46:7 › Admin Pages E2E (Manual) › Inquiry page loads
[Galaxy S9+] › tests\e2e\admin-pages-manual.spec.ts:61:7 › Admin Pages E2E (Manual) › CRM pages load
[Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:21:7 › admin responsive design (admin account) › dashboard loads correctly on all viewports
[Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:85:7 › admin responsive design (admin account) › drawer responsiveness on mobile
[Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:103:7 › admin responsive design (admin account) › form inputs are accessible on mobile
[Galaxy S9+] › tests\e2e\admin-responsive.spec.ts:126:7 › admin responsive design (admin account) › buttons are clickable on all viewports
[Galaxy S9+] › tests\e2e\blog-seo.spec.ts:6:7 › blog seo › exposes title description and canonical on blog detail pages
[Galaxy S9+] › tests\e2e\blog-validation.spec.ts:9:5 › Blog Management Full Flow - Real Domain Validation
[Galaxy S9+] › tests\e2e\contact-submit.spec.ts:27:7 › contact submit › creates an inquiry and shows it in admin list
[Galaxy S9+] › tests\e2e\contact-submit.spec.ts:58:7 › contact submit › submitting the public Contact.cshtml form shows the success message
[Galaxy S9+] › tests\e2e\dashboard-check.spec.ts:4:5 › check dashboard metrics ─────────────────
[Galaxy S9+] › tests\e2e\full-admin-pages.spec.ts:5:5 › production: verify all admin pages load correctly
[Galaxy S9+] › tests\e2e\full-user-flow.spec.ts:6:7 › 프로덕션 사용자 흐름 테스트 › 홈페이지 → 로그인 → 대시보드 → 블로그 CRUD
[Galaxy S9+] › tests\e2e\inquiry-detail.spec.ts:9:7 › inquiry detail › shows the created inquiry and admin action links
[Galaxy S9+] › tests\e2e\login-test.spec.ts:8:5 › Admin Login Page - prerendered HTML contains the form before JS runs
[Galaxy S9+] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
[Galaxy S9+] › tests\e2e\route-isolation.spec.ts:6:7 › route isolation › public home does not boot the admin app
[Public Smoke] › tests\e2e\public-smoke.spec.ts:7:7 › public smoke › @smoke loads the home page and key public pages with SEO basics
3 skipped
40 did not run
23 passed (31.6m)