results.json 143 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430
  1. {
  2. "config": {
  3. "configFile": "C:\\Users\\caoyg\\ai\\audio-tts\\audio_codebuddy\\tests\\playwright.config.ts",
  4. "rootDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/tests",
  5. "forbidOnly": false,
  6. "fullyParallel": false,
  7. "globalSetup": "C:\\Users\\caoyg\\ai\\audio-tts\\audio_codebuddy\\tests\\global-setup.ts",
  8. "globalTeardown": "C:\\Users\\caoyg\\ai\\audio-tts\\audio_codebuddy\\tests\\global-teardown.ts",
  9. "globalTimeout": 0,
  10. "grep": {},
  11. "grepInvert": null,
  12. "maxFailures": 0,
  13. "metadata": {},
  14. "preserveOutput": "always",
  15. "projects": [
  16. {
  17. "outputDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/test-results",
  18. "repeatEach": 1,
  19. "retries": 0,
  20. "metadata": {},
  21. "id": "smoke",
  22. "name": "smoke",
  23. "testDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/tests/smoke",
  24. "testIgnore": [],
  25. "testMatch": [
  26. "**/*.@(spec|test).?(c|m)[jt]s?(x)"
  27. ],
  28. "timeout": 120000
  29. },
  30. {
  31. "outputDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/test-results",
  32. "repeatEach": 1,
  33. "retries": 0,
  34. "metadata": {},
  35. "id": "regression",
  36. "name": "regression",
  37. "testDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/tests/regression",
  38. "testIgnore": [],
  39. "testMatch": [
  40. "**/*.@(spec|test).?(c|m)[jt]s?(x)"
  41. ],
  42. "timeout": 120000
  43. },
  44. {
  45. "outputDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/test-results",
  46. "repeatEach": 1,
  47. "retries": 0,
  48. "metadata": {},
  49. "id": "critical-journeys",
  50. "name": "critical-journeys",
  51. "testDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/tests/e2e/ui/critical-journeys",
  52. "testIgnore": [],
  53. "testMatch": [
  54. "**/*.@(spec|test).?(c|m)[jt]s?(x)"
  55. ],
  56. "timeout": 120000
  57. },
  58. {
  59. "outputDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/test-results",
  60. "repeatEach": 1,
  61. "retries": 0,
  62. "metadata": {},
  63. "id": "root-singles",
  64. "name": "root-singles",
  65. "testDir": "C:/Users/caoyg/ai/audio-tts/audio_codebuddy/tests",
  66. "testIgnore": [],
  67. "testMatch": [
  68. "/(example-rotation|page-cleanup-screenshot|textarea-size)\\.spec\\.ts$/"
  69. ],
  70. "timeout": 120000
  71. }
  72. ],
  73. "quiet": false,
  74. "reporter": [
  75. [
  76. "list",
  77. null
  78. ],
  79. [
  80. "json",
  81. {
  82. "outputFile": "test-results/results.json"
  83. }
  84. ],
  85. [
  86. "html",
  87. {
  88. "outputFolder": "test-results/report",
  89. "open": "never"
  90. }
  91. ],
  92. [
  93. "C:\\Users\\caoyg\\ai\\audio-tts\\audio_codebuddy\\tests\\helpers\\reporter.ts",
  94. null
  95. ]
  96. ],
  97. "reportSlowTests": {
  98. "max": 5,
  99. "threshold": 300000
  100. },
  101. "shard": null,
  102. "tags": [],
  103. "updateSnapshots": "missing",
  104. "updateSourceMethod": "patch",
  105. "version": "1.60.0",
  106. "workers": 1,
  107. "webServer": null
  108. },
  109. "suites": [
  110. {
  111. "title": "smoke\\api-readonly.spec.ts",
  112. "file": "smoke/api-readonly.spec.ts",
  113. "column": 0,
  114. "line": 0,
  115. "specs": [],
  116. "suites": [
  117. {
  118. "title": "API 只读冒烟测试",
  119. "file": "smoke/api-readonly.spec.ts",
  120. "line": 87,
  121. "column": 6,
  122. "specs": [
  123. {
  124. "title": "[认证] GET /api/auth/user-info",
  125. "ok": true,
  126. "tags": [],
  127. "tests": [
  128. {
  129. "timeout": 120000,
  130. "annotations": [],
  131. "expectedStatus": "passed",
  132. "projectId": "smoke",
  133. "projectName": "smoke",
  134. "results": [],
  135. "status": "skipped"
  136. }
  137. ],
  138. "id": "beb0537438593944a7c7-276e06dab1acd0d8d61e",
  139. "file": "smoke/api-readonly.spec.ts",
  140. "line": 97,
  141. "column": 9
  142. },
  143. {
  144. "title": "[TTS] GET /api/tts/voices",
  145. "ok": true,
  146. "tags": [],
  147. "tests": [
  148. {
  149. "timeout": 120000,
  150. "annotations": [],
  151. "expectedStatus": "passed",
  152. "projectId": "smoke",
  153. "projectName": "smoke",
  154. "results": [],
  155. "status": "skipped"
  156. }
  157. ],
  158. "id": "beb0537438593944a7c7-5e6a259c7a37125f2c52",
  159. "file": "smoke/api-readonly.spec.ts",
  160. "line": 97,
  161. "column": 9
  162. },
  163. {
  164. "title": "[TTS] GET /api/tts/providers",
  165. "ok": true,
  166. "tags": [],
  167. "tests": [
  168. {
  169. "timeout": 120000,
  170. "annotations": [],
  171. "expectedStatus": "passed",
  172. "projectId": "smoke",
  173. "projectName": "smoke",
  174. "results": [],
  175. "status": "skipped"
  176. }
  177. ],
  178. "id": "beb0537438593944a7c7-9a3851f9fcb8b1c61a6c",
  179. "file": "smoke/api-readonly.spec.ts",
  180. "line": 97,
  181. "column": 9
  182. },
  183. {
  184. "title": "[播放器] GET /api/player/audio/list",
  185. "ok": true,
  186. "tags": [],
  187. "tests": [
  188. {
  189. "timeout": 120000,
  190. "annotations": [],
  191. "expectedStatus": "passed",
  192. "projectId": "smoke",
  193. "projectName": "smoke",
  194. "results": [],
  195. "status": "skipped"
  196. }
  197. ],
  198. "id": "beb0537438593944a7c7-e0add0358b5a7cf24d32",
  199. "file": "smoke/api-readonly.spec.ts",
  200. "line": 97,
  201. "column": 9
  202. },
  203. {
  204. "title": "[播放器] GET /api/player/progress",
  205. "ok": true,
  206. "tags": [],
  207. "tests": [
  208. {
  209. "timeout": 120000,
  210. "annotations": [],
  211. "expectedStatus": "passed",
  212. "projectId": "smoke",
  213. "projectName": "smoke",
  214. "results": [],
  215. "status": "skipped"
  216. }
  217. ],
  218. "id": "beb0537438593944a7c7-b406568e7d3f7175ff3a",
  219. "file": "smoke/api-readonly.spec.ts",
  220. "line": 97,
  221. "column": 9
  222. },
  223. {
  224. "title": "[播放器] GET /api/player/recent",
  225. "ok": true,
  226. "tags": [],
  227. "tests": [
  228. {
  229. "timeout": 120000,
  230. "annotations": [],
  231. "expectedStatus": "passed",
  232. "projectId": "smoke",
  233. "projectName": "smoke",
  234. "results": [],
  235. "status": "skipped"
  236. }
  237. ],
  238. "id": "beb0537438593944a7c7-4c353aed174a0360fdd7",
  239. "file": "smoke/api-readonly.spec.ts",
  240. "line": 97,
  241. "column": 9
  242. },
  243. {
  244. "title": "[收藏] GET /api/favorites",
  245. "ok": true,
  246. "tags": [],
  247. "tests": [
  248. {
  249. "timeout": 120000,
  250. "annotations": [],
  251. "expectedStatus": "passed",
  252. "projectId": "smoke",
  253. "projectName": "smoke",
  254. "results": [],
  255. "status": "skipped"
  256. }
  257. ],
  258. "id": "beb0537438593944a7c7-f024c685af83637721b5",
  259. "file": "smoke/api-readonly.spec.ts",
  260. "line": 97,
  261. "column": 9
  262. },
  263. {
  264. "title": "[偏好] GET /api/user/preferences",
  265. "ok": true,
  266. "tags": [],
  267. "tests": [
  268. {
  269. "timeout": 120000,
  270. "annotations": [],
  271. "expectedStatus": "passed",
  272. "projectId": "smoke",
  273. "projectName": "smoke",
  274. "results": [],
  275. "status": "skipped"
  276. }
  277. ],
  278. "id": "beb0537438593944a7c7-d9c7073a06cba8ec4352",
  279. "file": "smoke/api-readonly.spec.ts",
  280. "line": 97,
  281. "column": 9
  282. },
  283. {
  284. "title": "[搜索] GET /api/search",
  285. "ok": true,
  286. "tags": [],
  287. "tests": [
  288. {
  289. "timeout": 120000,
  290. "annotations": [],
  291. "expectedStatus": "passed",
  292. "projectId": "smoke",
  293. "projectName": "smoke",
  294. "results": [],
  295. "status": "skipped"
  296. }
  297. ],
  298. "id": "beb0537438593944a7c7-6e7e74b03d3c7acb5841",
  299. "file": "smoke/api-readonly.spec.ts",
  300. "line": 97,
  301. "column": 9
  302. },
  303. {
  304. "title": "[分类] GET /api/categories",
  305. "ok": true,
  306. "tags": [],
  307. "tests": [
  308. {
  309. "timeout": 120000,
  310. "annotations": [],
  311. "expectedStatus": "passed",
  312. "projectId": "smoke",
  313. "projectName": "smoke",
  314. "results": [],
  315. "status": "skipped"
  316. }
  317. ],
  318. "id": "beb0537438593944a7c7-aa253961f7f17d45215f",
  319. "file": "smoke/api-readonly.spec.ts",
  320. "line": 97,
  321. "column": 9
  322. },
  323. {
  324. "title": "[BGM] GET /api/bgm",
  325. "ok": true,
  326. "tags": [],
  327. "tests": [
  328. {
  329. "timeout": 120000,
  330. "annotations": [],
  331. "expectedStatus": "passed",
  332. "projectId": "smoke",
  333. "projectName": "smoke",
  334. "results": [],
  335. "status": "skipped"
  336. }
  337. ],
  338. "id": "beb0537438593944a7c7-da43c34f3d7ab832abfc",
  339. "file": "smoke/api-readonly.spec.ts",
  340. "line": 97,
  341. "column": 9
  342. },
  343. {
  344. "title": "[书籍] GET /api/book-generator/langgraph/books",
  345. "ok": true,
  346. "tags": [],
  347. "tests": [
  348. {
  349. "timeout": 120000,
  350. "annotations": [],
  351. "expectedStatus": "passed",
  352. "projectId": "smoke",
  353. "projectName": "smoke",
  354. "results": [],
  355. "status": "skipped"
  356. }
  357. ],
  358. "id": "beb0537438593944a7c7-0b4f22ad98e9f3ebc99f",
  359. "file": "smoke/api-readonly.spec.ts",
  360. "line": 97,
  361. "column": 9
  362. },
  363. {
  364. "title": "[专辑] GET /api/book-generator/albums",
  365. "ok": true,
  366. "tags": [],
  367. "tests": [
  368. {
  369. "timeout": 120000,
  370. "annotations": [],
  371. "expectedStatus": "passed",
  372. "projectId": "smoke",
  373. "projectName": "smoke",
  374. "results": [],
  375. "status": "skipped"
  376. }
  377. ],
  378. "id": "beb0537438593944a7c7-e8c836faac66c4ed1391",
  379. "file": "smoke/api-readonly.spec.ts",
  380. "line": 97,
  381. "column": 9
  382. },
  383. {
  384. "title": "[播放列表] GET /api/playlists",
  385. "ok": true,
  386. "tags": [],
  387. "tests": [
  388. {
  389. "timeout": 120000,
  390. "annotations": [],
  391. "expectedStatus": "passed",
  392. "projectId": "smoke",
  393. "projectName": "smoke",
  394. "results": [],
  395. "status": "skipped"
  396. }
  397. ],
  398. "id": "beb0537438593944a7c7-c82981dc5b1b6503f90d",
  399. "file": "smoke/api-readonly.spec.ts",
  400. "line": 97,
  401. "column": 9
  402. },
  403. {
  404. "title": "[草稿] GET /api/drafts",
  405. "ok": true,
  406. "tags": [],
  407. "tests": [
  408. {
  409. "timeout": 120000,
  410. "annotations": [],
  411. "expectedStatus": "passed",
  412. "projectId": "smoke",
  413. "projectName": "smoke",
  414. "results": [],
  415. "status": "skipped"
  416. }
  417. ],
  418. "id": "beb0537438593944a7c7-746f1ed2c3b447c44c8c",
  419. "file": "smoke/api-readonly.spec.ts",
  420. "line": 97,
  421. "column": 9
  422. },
  423. {
  424. "title": "[历史] GET /api/history",
  425. "ok": true,
  426. "tags": [],
  427. "tests": [
  428. {
  429. "timeout": 120000,
  430. "annotations": [],
  431. "expectedStatus": "passed",
  432. "projectId": "smoke",
  433. "projectName": "smoke",
  434. "results": [],
  435. "status": "skipped"
  436. }
  437. ],
  438. "id": "beb0537438593944a7c7-2abe8508c0f4751e43f3",
  439. "file": "smoke/api-readonly.spec.ts",
  440. "line": 97,
  441. "column": 9
  442. },
  443. {
  444. "title": "[视频] GET /api/video/projects",
  445. "ok": true,
  446. "tags": [],
  447. "tests": [
  448. {
  449. "timeout": 120000,
  450. "annotations": [],
  451. "expectedStatus": "passed",
  452. "projectId": "smoke",
  453. "projectName": "smoke",
  454. "results": [],
  455. "status": "skipped"
  456. }
  457. ],
  458. "id": "beb0537438593944a7c7-c816e52caf33f7e054ed",
  459. "file": "smoke/api-readonly.spec.ts",
  460. "line": 97,
  461. "column": 9
  462. },
  463. {
  464. "title": "[视频] GET /api/video/materials",
  465. "ok": true,
  466. "tags": [],
  467. "tests": [
  468. {
  469. "timeout": 120000,
  470. "annotations": [],
  471. "expectedStatus": "passed",
  472. "projectId": "smoke",
  473. "projectName": "smoke",
  474. "results": [],
  475. "status": "skipped"
  476. }
  477. ],
  478. "id": "beb0537438593944a7c7-220dc1f7b6b3a0dc3dd4",
  479. "file": "smoke/api-readonly.spec.ts",
  480. "line": 97,
  481. "column": 9
  482. },
  483. {
  484. "title": "[签到] GET /api/sign/status",
  485. "ok": true,
  486. "tags": [],
  487. "tests": [
  488. {
  489. "timeout": 120000,
  490. "annotations": [],
  491. "expectedStatus": "passed",
  492. "projectId": "smoke",
  493. "projectName": "smoke",
  494. "results": [],
  495. "status": "skipped"
  496. }
  497. ],
  498. "id": "beb0537438593944a7c7-aec64c06a26fcdcc8eac",
  499. "file": "smoke/api-readonly.spec.ts",
  500. "line": 97,
  501. "column": 9
  502. },
  503. {
  504. "title": "[订阅] GET /api/subscription/plans",
  505. "ok": true,
  506. "tags": [],
  507. "tests": [
  508. {
  509. "timeout": 120000,
  510. "annotations": [],
  511. "expectedStatus": "passed",
  512. "projectId": "smoke",
  513. "projectName": "smoke",
  514. "results": [],
  515. "status": "skipped"
  516. }
  517. ],
  518. "id": "beb0537438593944a7c7-f1364c62cc49e63923c3",
  519. "file": "smoke/api-readonly.spec.ts",
  520. "line": 97,
  521. "column": 9
  522. },
  523. {
  524. "title": "[订阅] GET /api/subscription/balance",
  525. "ok": true,
  526. "tags": [],
  527. "tests": [
  528. {
  529. "timeout": 120000,
  530. "annotations": [],
  531. "expectedStatus": "passed",
  532. "projectId": "smoke",
  533. "projectName": "smoke",
  534. "results": [],
  535. "status": "skipped"
  536. }
  537. ],
  538. "id": "beb0537438593944a7c7-c25c8baf0a112741b682",
  539. "file": "smoke/api-readonly.spec.ts",
  540. "line": 97,
  541. "column": 9
  542. },
  543. {
  544. "title": "[发布] GET /api/publish/accounts",
  545. "ok": true,
  546. "tags": [],
  547. "tests": [
  548. {
  549. "timeout": 120000,
  550. "annotations": [],
  551. "expectedStatus": "passed",
  552. "projectId": "smoke",
  553. "projectName": "smoke",
  554. "results": [],
  555. "status": "skipped"
  556. }
  557. ],
  558. "id": "beb0537438593944a7c7-e5c5dff690de9caf5d8f",
  559. "file": "smoke/api-readonly.spec.ts",
  560. "line": 97,
  561. "column": 9
  562. },
  563. {
  564. "title": "[发布] GET /api/publish/tasks",
  565. "ok": true,
  566. "tags": [],
  567. "tests": [
  568. {
  569. "timeout": 120000,
  570. "annotations": [],
  571. "expectedStatus": "passed",
  572. "projectId": "smoke",
  573. "projectName": "smoke",
  574. "results": [],
  575. "status": "skipped"
  576. }
  577. ],
  578. "id": "beb0537438593944a7c7-bab25b2b9fa90f664cbe",
  579. "file": "smoke/api-readonly.spec.ts",
  580. "line": 97,
  581. "column": 9
  582. },
  583. {
  584. "title": "[会员] GET /api/member/status",
  585. "ok": true,
  586. "tags": [],
  587. "tests": [
  588. {
  589. "timeout": 120000,
  590. "annotations": [],
  591. "expectedStatus": "passed",
  592. "projectId": "smoke",
  593. "projectName": "smoke",
  594. "results": [],
  595. "status": "skipped"
  596. }
  597. ],
  598. "id": "beb0537438593944a7c7-cf899eb25837bd88b81a",
  599. "file": "smoke/api-readonly.spec.ts",
  600. "line": 97,
  601. "column": 9
  602. },
  603. {
  604. "title": "[日志] GET /api/logs",
  605. "ok": true,
  606. "tags": [],
  607. "tests": [
  608. {
  609. "timeout": 120000,
  610. "annotations": [],
  611. "expectedStatus": "passed",
  612. "projectId": "smoke",
  613. "projectName": "smoke",
  614. "results": [],
  615. "status": "skipped"
  616. }
  617. ],
  618. "id": "beb0537438593944a7c7-584967293641e849ef88",
  619. "file": "smoke/api-readonly.spec.ts",
  620. "line": 97,
  621. "column": 9
  622. }
  623. ]
  624. }
  625. ]
  626. },
  627. {
  628. "title": "smoke\\health.spec.ts",
  629. "file": "smoke/health.spec.ts",
  630. "column": 0,
  631. "line": 0,
  632. "specs": [],
  633. "suites": [
  634. {
  635. "title": "健康检查",
  636. "file": "smoke/health.spec.ts",
  637. "line": 8,
  638. "column": 6,
  639. "specs": [
  640. {
  641. "title": "S01: 服务健康检查 /health",
  642. "ok": true,
  643. "tags": [],
  644. "tests": [
  645. {
  646. "timeout": 120000,
  647. "annotations": [],
  648. "expectedStatus": "passed",
  649. "projectId": "smoke",
  650. "projectName": "smoke",
  651. "results": [],
  652. "status": "skipped"
  653. }
  654. ],
  655. "id": "760d72a3746ac5132f88-aa3b0abd43a137b9a497",
  656. "file": "smoke/health.spec.ts",
  657. "line": 17,
  658. "column": 7
  659. },
  660. {
  661. "title": "S02: 数据库连接检查 /api/tts/test-db",
  662. "ok": true,
  663. "tags": [],
  664. "tests": [
  665. {
  666. "timeout": 120000,
  667. "annotations": [],
  668. "expectedStatus": "passed",
  669. "projectId": "smoke",
  670. "projectName": "smoke",
  671. "results": [],
  672. "status": "skipped"
  673. }
  674. ],
  675. "id": "760d72a3746ac5132f88-84256122a382a42e5f8e",
  676. "file": "smoke/health.spec.ts",
  677. "line": 23,
  678. "column": 7
  679. },
  680. {
  681. "title": "S03: 性能指标端点 /api/metrics",
  682. "ok": true,
  683. "tags": [],
  684. "tests": [
  685. {
  686. "timeout": 120000,
  687. "annotations": [],
  688. "expectedStatus": "passed",
  689. "projectId": "smoke",
  690. "projectName": "smoke",
  691. "results": [],
  692. "status": "skipped"
  693. }
  694. ],
  695. "id": "760d72a3746ac5132f88-3be69b8ebd0fdc99f86f",
  696. "file": "smoke/health.spec.ts",
  697. "line": 29,
  698. "column": 7
  699. },
  700. {
  701. "title": "S04: 静态文件服务可用 /uploads",
  702. "ok": true,
  703. "tags": [],
  704. "tests": [
  705. {
  706. "timeout": 120000,
  707. "annotations": [],
  708. "expectedStatus": "passed",
  709. "projectId": "smoke",
  710. "projectName": "smoke",
  711. "results": [],
  712. "status": "skipped"
  713. }
  714. ],
  715. "id": "760d72a3746ac5132f88-5bf657c13df307ceae26",
  716. "file": "smoke/health.spec.ts",
  717. "line": 35,
  718. "column": 7
  719. }
  720. ]
  721. }
  722. ]
  723. },
  724. {
  725. "title": "smoke\\pages-load.spec.ts",
  726. "file": "smoke/pages-load.spec.ts",
  727. "column": 0,
  728. "line": 0,
  729. "specs": [],
  730. "suites": [
  731. {
  732. "title": "核心页面加载测试",
  733. "file": "smoke/pages-load.spec.ts",
  734. "line": 21,
  735. "column": 6,
  736. "specs": [
  737. {
  738. "title": "页面加载: 首页 (/#/pages/index/index)",
  739. "ok": true,
  740. "tags": [],
  741. "tests": [
  742. {
  743. "timeout": 120000,
  744. "annotations": [],
  745. "expectedStatus": "passed",
  746. "projectId": "smoke",
  747. "projectName": "smoke",
  748. "results": [],
  749. "status": "skipped"
  750. }
  751. ],
  752. "id": "20119cef33011e8fc785-530919740522831769a2",
  753. "file": "smoke/pages-load.spec.ts",
  754. "line": 23,
  755. "column": 9
  756. },
  757. {
  758. "title": "页面加载: 生成页 (/#/pages/create/index)",
  759. "ok": true,
  760. "tags": [],
  761. "tests": [
  762. {
  763. "timeout": 120000,
  764. "annotations": [],
  765. "expectedStatus": "passed",
  766. "projectId": "smoke",
  767. "projectName": "smoke",
  768. "results": [],
  769. "status": "skipped"
  770. }
  771. ],
  772. "id": "20119cef33011e8fc785-63c215ddfb20a6ac6379",
  773. "file": "smoke/pages-load.spec.ts",
  774. "line": 23,
  775. "column": 9
  776. },
  777. {
  778. "title": "页面加载: 书籍生成 (/#/pages/book-generator/index)",
  779. "ok": true,
  780. "tags": [],
  781. "tests": [
  782. {
  783. "timeout": 120000,
  784. "annotations": [],
  785. "expectedStatus": "passed",
  786. "projectId": "smoke",
  787. "projectName": "smoke",
  788. "results": [],
  789. "status": "skipped"
  790. }
  791. ],
  792. "id": "20119cef33011e8fc785-39a6672383186eb07c33",
  793. "file": "smoke/pages-load.spec.ts",
  794. "line": 23,
  795. "column": 9
  796. },
  797. {
  798. "title": "页面加载: 我的 (/#/pages/mine/index)",
  799. "ok": true,
  800. "tags": [],
  801. "tests": [
  802. {
  803. "timeout": 120000,
  804. "annotations": [],
  805. "expectedStatus": "passed",
  806. "projectId": "smoke",
  807. "projectName": "smoke",
  808. "results": [],
  809. "status": "skipped"
  810. }
  811. ],
  812. "id": "20119cef33011e8fc785-622e3c00c5165ca01c81",
  813. "file": "smoke/pages-load.spec.ts",
  814. "line": 23,
  815. "column": 9
  816. },
  817. {
  818. "title": "页面加载: 历史记录 (/#/pages/history/index)",
  819. "ok": true,
  820. "tags": [],
  821. "tests": [
  822. {
  823. "timeout": 120000,
  824. "annotations": [],
  825. "expectedStatus": "passed",
  826. "projectId": "smoke",
  827. "projectName": "smoke",
  828. "results": [],
  829. "status": "skipped"
  830. }
  831. ],
  832. "id": "20119cef33011e8fc785-2632339c27383150abbd",
  833. "file": "smoke/pages-load.spec.ts",
  834. "line": 23,
  835. "column": 9
  836. },
  837. {
  838. "title": "页面加载: 播放器 (/#/pages/player/index)",
  839. "ok": true,
  840. "tags": [],
  841. "tests": [
  842. {
  843. "timeout": 120000,
  844. "annotations": [],
  845. "expectedStatus": "passed",
  846. "projectId": "smoke",
  847. "projectName": "smoke",
  848. "results": [],
  849. "status": "skipped"
  850. }
  851. ],
  852. "id": "20119cef33011e8fc785-3198524265302f1e33a6",
  853. "file": "smoke/pages-load.spec.ts",
  854. "line": 23,
  855. "column": 9
  856. },
  857. {
  858. "title": "页面加载: 会员中心 (/#/pages/member/index)",
  859. "ok": true,
  860. "tags": [],
  861. "tests": [
  862. {
  863. "timeout": 120000,
  864. "annotations": [],
  865. "expectedStatus": "passed",
  866. "projectId": "smoke",
  867. "projectName": "smoke",
  868. "results": [],
  869. "status": "skipped"
  870. }
  871. ],
  872. "id": "20119cef33011e8fc785-3a7c9b269871f31a9f84",
  873. "file": "smoke/pages-load.spec.ts",
  874. "line": 23,
  875. "column": 9
  876. },
  877. {
  878. "title": "页面加载: 专辑列表 (/#/pages/albums/index)",
  879. "ok": true,
  880. "tags": [],
  881. "tests": [
  882. {
  883. "timeout": 120000,
  884. "annotations": [],
  885. "expectedStatus": "passed",
  886. "projectId": "smoke",
  887. "projectName": "smoke",
  888. "results": [],
  889. "status": "skipped"
  890. }
  891. ],
  892. "id": "20119cef33011e8fc785-c8b2b306e866f9b8359a",
  893. "file": "smoke/pages-load.spec.ts",
  894. "line": 23,
  895. "column": 9
  896. }
  897. ]
  898. }
  899. ]
  900. },
  901. {
  902. "title": "regression\\01-auth.spec.ts",
  903. "file": "regression/01-auth.spec.ts",
  904. "column": 0,
  905. "line": 0,
  906. "specs": [],
  907. "suites": [
  908. {
  909. "title": "认证模块 (Auth)",
  910. "file": "regression/01-auth.spec.ts",
  911. "line": 11,
  912. "column": 6,
  913. "specs": [
  914. {
  915. "title": "A01: 发送验证码 POST /api/auth/send-code",
  916. "ok": true,
  917. "tags": [],
  918. "tests": [
  919. {
  920. "timeout": 120000,
  921. "annotations": [],
  922. "expectedStatus": "passed",
  923. "projectId": "regression",
  924. "projectName": "regression",
  925. "results": [],
  926. "status": "skipped"
  927. }
  928. ],
  929. "id": "791b3c4e0869e77b2651-8acee01e7d024e30511b",
  930. "file": "regression/01-auth.spec.ts",
  931. "line": 21,
  932. "column": 7
  933. },
  934. {
  935. "title": "A02: 手机号登录 POST /api/auth/login",
  936. "ok": true,
  937. "tags": [],
  938. "tests": [
  939. {
  940. "timeout": 120000,
  941. "annotations": [],
  942. "expectedStatus": "passed",
  943. "projectId": "regression",
  944. "projectName": "regression",
  945. "results": [],
  946. "status": "skipped"
  947. }
  948. ],
  949. "id": "791b3c4e0869e77b2651-8df66f485b3444227a12",
  950. "file": "regression/01-auth.spec.ts",
  951. "line": 27,
  952. "column": 7
  953. },
  954. {
  955. "title": "A03: 获取用户信息 GET /api/auth/user-info",
  956. "ok": true,
  957. "tags": [],
  958. "tests": [
  959. {
  960. "timeout": 120000,
  961. "annotations": [],
  962. "expectedStatus": "passed",
  963. "projectId": "regression",
  964. "projectName": "regression",
  965. "results": [],
  966. "status": "skipped"
  967. }
  968. ],
  969. "id": "791b3c4e0869e77b2651-9cf1280cedf4651f071f",
  970. "file": "regression/01-auth.spec.ts",
  971. "line": 38,
  972. "column": 7
  973. },
  974. {
  975. "title": "A04: 无效手机号被拒绝",
  976. "ok": true,
  977. "tags": [],
  978. "tests": [
  979. {
  980. "timeout": 120000,
  981. "annotations": [],
  982. "expectedStatus": "passed",
  983. "projectId": "regression",
  984. "projectName": "regression",
  985. "results": [],
  986. "status": "skipped"
  987. }
  988. ],
  989. "id": "791b3c4e0869e77b2651-ae4589da756e78253576",
  990. "file": "regression/01-auth.spec.ts",
  991. "line": 44,
  992. "column": 7
  993. }
  994. ]
  995. }
  996. ]
  997. },
  998. {
  999. "title": "regression\\02-tts.spec.ts",
  1000. "file": "regression/02-tts.spec.ts",
  1001. "column": 0,
  1002. "line": 0,
  1003. "specs": [],
  1004. "suites": [
  1005. {
  1006. "title": "TTS语音合成 (TTS)",
  1007. "file": "regression/02-tts.spec.ts",
  1008. "line": 11,
  1009. "column": 6,
  1010. "specs": [
  1011. {
  1012. "title": "T01: 获取音色列表 GET /api/tts/voices",
  1013. "ok": true,
  1014. "tags": [],
  1015. "tests": [
  1016. {
  1017. "timeout": 120000,
  1018. "annotations": [],
  1019. "expectedStatus": "passed",
  1020. "projectId": "regression",
  1021. "projectName": "regression",
  1022. "results": [],
  1023. "status": "skipped"
  1024. }
  1025. ],
  1026. "id": "a53d4e3c2e5f248f00e3-3a77b8e9ca13903f68e8",
  1027. "file": "regression/02-tts.spec.ts",
  1028. "line": 20,
  1029. "column": 7
  1030. },
  1031. {
  1032. "title": "T02: 获取提供商列表 GET /api/tts/providers",
  1033. "ok": true,
  1034. "tags": [],
  1035. "tests": [
  1036. {
  1037. "timeout": 120000,
  1038. "annotations": [],
  1039. "expectedStatus": "passed",
  1040. "projectId": "regression",
  1041. "projectName": "regression",
  1042. "results": [],
  1043. "status": "skipped"
  1044. }
  1045. ],
  1046. "id": "a53d4e3c2e5f248f00e3-b47afe172cdc07fcf759",
  1047. "file": "regression/02-tts.spec.ts",
  1048. "line": 27,
  1049. "column": 7
  1050. },
  1051. {
  1052. "title": "T03: 生成音频任务 POST /api/tts/generate",
  1053. "ok": true,
  1054. "tags": [],
  1055. "tests": [
  1056. {
  1057. "timeout": 120000,
  1058. "annotations": [],
  1059. "expectedStatus": "passed",
  1060. "projectId": "regression",
  1061. "projectName": "regression",
  1062. "results": [],
  1063. "status": "skipped"
  1064. }
  1065. ],
  1066. "id": "a53d4e3c2e5f248f00e3-f15e59cf2ac030bda67a",
  1067. "file": "regression/02-tts.spec.ts",
  1068. "line": 33,
  1069. "column": 7
  1070. },
  1071. {
  1072. "title": "T04: 查询音频状态 GET /api/tts/status/:audioId",
  1073. "ok": true,
  1074. "tags": [],
  1075. "tests": [
  1076. {
  1077. "timeout": 120000,
  1078. "annotations": [],
  1079. "expectedStatus": "passed",
  1080. "projectId": "regression",
  1081. "projectName": "regression",
  1082. "results": [],
  1083. "status": "skipped"
  1084. }
  1085. ],
  1086. "id": "a53d4e3c2e5f248f00e3-8f45a1c6e9bd6ab50230",
  1087. "file": "regression/02-tts.spec.ts",
  1088. "line": 45,
  1089. "column": 7
  1090. },
  1091. {
  1092. "title": "T05: 获取下载信息 GET /api/tts/download/:audioId",
  1093. "ok": true,
  1094. "tags": [],
  1095. "tests": [
  1096. {
  1097. "timeout": 120000,
  1098. "annotations": [],
  1099. "expectedStatus": "passed",
  1100. "projectId": "regression",
  1101. "projectName": "regression",
  1102. "results": [],
  1103. "status": "skipped"
  1104. }
  1105. ],
  1106. "id": "a53d4e3c2e5f248f00e3-1aca13c8782184b8fa7d",
  1107. "file": "regression/02-tts.spec.ts",
  1108. "line": 51,
  1109. "column": 7
  1110. }
  1111. ]
  1112. }
  1113. ]
  1114. },
  1115. {
  1116. "title": "regression\\03-player.spec.ts",
  1117. "file": "regression/03-player.spec.ts",
  1118. "column": 0,
  1119. "line": 0,
  1120. "specs": [],
  1121. "suites": [
  1122. {
  1123. "title": "音频播放器 (Player)",
  1124. "file": "regression/03-player.spec.ts",
  1125. "line": 8,
  1126. "column": 6,
  1127. "specs": [
  1128. {
  1129. "title": "P01: 获取音频播放列表 GET /api/player/audio/list",
  1130. "ok": true,
  1131. "tags": [],
  1132. "tests": [
  1133. {
  1134. "timeout": 120000,
  1135. "annotations": [],
  1136. "expectedStatus": "passed",
  1137. "projectId": "regression",
  1138. "projectName": "regression",
  1139. "results": [],
  1140. "status": "skipped"
  1141. }
  1142. ],
  1143. "id": "7cb0053f11f226ac0607-33cdd0dd2f9e25ed6585",
  1144. "file": "regression/03-player.spec.ts",
  1145. "line": 12,
  1146. "column": 7
  1147. },
  1148. {
  1149. "title": "P02: 获取播放进度 GET /api/player/progress",
  1150. "ok": true,
  1151. "tags": [],
  1152. "tests": [
  1153. {
  1154. "timeout": 120000,
  1155. "annotations": [],
  1156. "expectedStatus": "passed",
  1157. "projectId": "regression",
  1158. "projectName": "regression",
  1159. "results": [],
  1160. "status": "skipped"
  1161. }
  1162. ],
  1163. "id": "7cb0053f11f226ac0607-7a784d5077b72ccac6a0",
  1164. "file": "regression/03-player.spec.ts",
  1165. "line": 18,
  1166. "column": 7
  1167. },
  1168. {
  1169. "title": "P03: 保存播放进度 POST /api/player/progress",
  1170. "ok": true,
  1171. "tags": [],
  1172. "tests": [
  1173. {
  1174. "timeout": 120000,
  1175. "annotations": [],
  1176. "expectedStatus": "passed",
  1177. "projectId": "regression",
  1178. "projectName": "regression",
  1179. "results": [],
  1180. "status": "skipped"
  1181. }
  1182. ],
  1183. "id": "7cb0053f11f226ac0607-a4e1abc14e0633914fc5",
  1184. "file": "regression/03-player.spec.ts",
  1185. "line": 23,
  1186. "column": 7
  1187. },
  1188. {
  1189. "title": "P04: 更新播放进度 PUT /api/player/progress/1",
  1190. "ok": true,
  1191. "tags": [],
  1192. "tests": [
  1193. {
  1194. "timeout": 120000,
  1195. "annotations": [],
  1196. "expectedStatus": "passed",
  1197. "projectId": "regression",
  1198. "projectName": "regression",
  1199. "results": [],
  1200. "status": "skipped"
  1201. }
  1202. ],
  1203. "id": "7cb0053f11f226ac0607-c36ca41b921985ee7384",
  1204. "file": "regression/03-player.spec.ts",
  1205. "line": 33,
  1206. "column": 7
  1207. },
  1208. {
  1209. "title": "P05: 获取最近播放 GET /api/player/recent",
  1210. "ok": true,
  1211. "tags": [],
  1212. "tests": [
  1213. {
  1214. "timeout": 120000,
  1215. "annotations": [],
  1216. "expectedStatus": "passed",
  1217. "projectId": "regression",
  1218. "projectName": "regression",
  1219. "results": [],
  1220. "status": "skipped"
  1221. }
  1222. ],
  1223. "id": "7cb0053f11f226ac0607-7d4489cedbca0670bba7",
  1224. "file": "regression/03-player.spec.ts",
  1225. "line": 39,
  1226. "column": 7
  1227. },
  1228. {
  1229. "title": "P06: 获取章节音频详情 GET /api/player/audio/:id",
  1230. "ok": true,
  1231. "tags": [],
  1232. "tests": [
  1233. {
  1234. "timeout": 120000,
  1235. "annotations": [],
  1236. "expectedStatus": "passed",
  1237. "projectId": "regression",
  1238. "projectName": "regression",
  1239. "results": [],
  1240. "status": "skipped"
  1241. }
  1242. ],
  1243. "id": "7cb0053f11f226ac0607-b3a8d80d6a26fba49f5a",
  1244. "file": "regression/03-player.spec.ts",
  1245. "line": 44,
  1246. "column": 7
  1247. },
  1248. {
  1249. "title": "P07: 更新公开状态 PUT /api/player/audio/:id/public",
  1250. "ok": true,
  1251. "tags": [],
  1252. "tests": [
  1253. {
  1254. "timeout": 120000,
  1255. "annotations": [],
  1256. "expectedStatus": "passed",
  1257. "projectId": "regression",
  1258. "projectName": "regression",
  1259. "results": [],
  1260. "status": "skipped"
  1261. }
  1262. ],
  1263. "id": "7cb0053f11f226ac0607-697ac125e3b1980a5942",
  1264. "file": "regression/03-player.spec.ts",
  1265. "line": 49,
  1266. "column": 7
  1267. }
  1268. ]
  1269. }
  1270. ]
  1271. },
  1272. {
  1273. "title": "regression\\04-favorites.spec.ts",
  1274. "file": "regression/04-favorites.spec.ts",
  1275. "column": 0,
  1276. "line": 0,
  1277. "specs": [],
  1278. "suites": [
  1279. {
  1280. "title": "收藏功能 (Favorites)",
  1281. "file": "regression/04-favorites.spec.ts",
  1282. "line": 7,
  1283. "column": 6,
  1284. "specs": [
  1285. {
  1286. "title": "F01: 获取收藏列表 GET /api/favorites",
  1287. "ok": true,
  1288. "tags": [],
  1289. "tests": [
  1290. {
  1291. "timeout": 120000,
  1292. "annotations": [],
  1293. "expectedStatus": "passed",
  1294. "projectId": "regression",
  1295. "projectName": "regression",
  1296. "results": [],
  1297. "status": "skipped"
  1298. }
  1299. ],
  1300. "id": "2136d6cf3bdcb1d1f124-0518fdbf613a947c1bdc",
  1301. "file": "regression/04-favorites.spec.ts",
  1302. "line": 11,
  1303. "column": 7
  1304. },
  1305. {
  1306. "title": "F02: 添加收藏 POST /api/favorites",
  1307. "ok": true,
  1308. "tags": [],
  1309. "tests": [
  1310. {
  1311. "timeout": 120000,
  1312. "annotations": [],
  1313. "expectedStatus": "passed",
  1314. "projectId": "regression",
  1315. "projectName": "regression",
  1316. "results": [],
  1317. "status": "skipped"
  1318. }
  1319. ],
  1320. "id": "2136d6cf3bdcb1d1f124-b79055f24f670f92cadc",
  1321. "file": "regression/04-favorites.spec.ts",
  1322. "line": 16,
  1323. "column": 7
  1324. },
  1325. {
  1326. "title": "F03: 取消收藏 DELETE /api/favorites/:id",
  1327. "ok": true,
  1328. "tags": [],
  1329. "tests": [
  1330. {
  1331. "timeout": 120000,
  1332. "annotations": [],
  1333. "expectedStatus": "passed",
  1334. "projectId": "regression",
  1335. "projectName": "regression",
  1336. "results": [],
  1337. "status": "skipped"
  1338. }
  1339. ],
  1340. "id": "2136d6cf3bdcb1d1f124-e2b962442ecab845592a",
  1341. "file": "regression/04-favorites.spec.ts",
  1342. "line": 22,
  1343. "column": 7
  1344. }
  1345. ]
  1346. }
  1347. ]
  1348. },
  1349. {
  1350. "title": "regression\\05-history.spec.ts",
  1351. "file": "regression/05-history.spec.ts",
  1352. "column": 0,
  1353. "line": 0,
  1354. "specs": [],
  1355. "suites": [
  1356. {
  1357. "title": "播放历史 (History)",
  1358. "file": "regression/05-history.spec.ts",
  1359. "line": 7,
  1360. "column": 6,
  1361. "specs": [
  1362. {
  1363. "title": "H01: 获取历史列表 GET /api/history",
  1364. "ok": true,
  1365. "tags": [],
  1366. "tests": [
  1367. {
  1368. "timeout": 120000,
  1369. "annotations": [],
  1370. "expectedStatus": "passed",
  1371. "projectId": "regression",
  1372. "projectName": "regression",
  1373. "results": [],
  1374. "status": "skipped"
  1375. }
  1376. ],
  1377. "id": "ff1e9e7e9280c0ae743c-ca26cbbd0fc9c0c6eb5b",
  1378. "file": "regression/05-history.spec.ts",
  1379. "line": 11,
  1380. "column": 7
  1381. },
  1382. {
  1383. "title": "H02: 分页参数生效",
  1384. "ok": true,
  1385. "tags": [],
  1386. "tests": [
  1387. {
  1388. "timeout": 120000,
  1389. "annotations": [],
  1390. "expectedStatus": "passed",
  1391. "projectId": "regression",
  1392. "projectName": "regression",
  1393. "results": [],
  1394. "status": "skipped"
  1395. }
  1396. ],
  1397. "id": "ff1e9e7e9280c0ae743c-940505fd412402a78b7b",
  1398. "file": "regression/05-history.spec.ts",
  1399. "line": 17,
  1400. "column": 7
  1401. },
  1402. {
  1403. "title": "H03: 按日期筛选",
  1404. "ok": true,
  1405. "tags": [],
  1406. "tests": [
  1407. {
  1408. "timeout": 120000,
  1409. "annotations": [],
  1410. "expectedStatus": "passed",
  1411. "projectId": "regression",
  1412. "projectName": "regression",
  1413. "results": [],
  1414. "status": "skipped"
  1415. }
  1416. ],
  1417. "id": "ff1e9e7e9280c0ae743c-85cc09cfe65173b79b06",
  1418. "file": "regression/05-history.spec.ts",
  1419. "line": 22,
  1420. "column": 7
  1421. },
  1422. {
  1423. "title": "H04: 批量删除历史 DELETE /api/history/batch",
  1424. "ok": true,
  1425. "tags": [],
  1426. "tests": [
  1427. {
  1428. "timeout": 120000,
  1429. "annotations": [],
  1430. "expectedStatus": "passed",
  1431. "projectId": "regression",
  1432. "projectName": "regression",
  1433. "results": [],
  1434. "status": "skipped"
  1435. }
  1436. ],
  1437. "id": "ff1e9e7e9280c0ae743c-a79878b3a1257f32fdf0",
  1438. "file": "regression/05-history.spec.ts",
  1439. "line": 27,
  1440. "column": 7
  1441. }
  1442. ]
  1443. }
  1444. ]
  1445. },
  1446. {
  1447. "title": "regression\\06-search.spec.ts",
  1448. "file": "regression/06-search.spec.ts",
  1449. "column": 0,
  1450. "line": 0,
  1451. "specs": [],
  1452. "suites": [
  1453. {
  1454. "title": "搜索功能 (Search)",
  1455. "file": "regression/06-search.spec.ts",
  1456. "line": 7,
  1457. "column": 6,
  1458. "specs": [
  1459. {
  1460. "title": "S01: 基础搜索 GET /api/search?keyword=test",
  1461. "ok": true,
  1462. "tags": [],
  1463. "tests": [
  1464. {
  1465. "timeout": 120000,
  1466. "annotations": [],
  1467. "expectedStatus": "passed",
  1468. "projectId": "regression",
  1469. "projectName": "regression",
  1470. "results": [],
  1471. "status": "skipped"
  1472. }
  1473. ],
  1474. "id": "e19882fc992b10cdc2c6-2fde36af7c7ecb7d6612",
  1475. "file": "regression/06-search.spec.ts",
  1476. "line": 11,
  1477. "column": 7
  1478. },
  1479. {
  1480. "title": "S02: 搜索历史 GET /api/search/history",
  1481. "ok": true,
  1482. "tags": [],
  1483. "tests": [
  1484. {
  1485. "timeout": 120000,
  1486. "annotations": [],
  1487. "expectedStatus": "passed",
  1488. "projectId": "regression",
  1489. "projectName": "regression",
  1490. "results": [],
  1491. "status": "skipped"
  1492. }
  1493. ],
  1494. "id": "e19882fc992b10cdc2c6-58cc401d31e85209226a",
  1495. "file": "regression/06-search.spec.ts",
  1496. "line": 16,
  1497. "column": 7
  1498. },
  1499. {
  1500. "title": "S03: 添加搜索记录 POST /api/search/history",
  1501. "ok": true,
  1502. "tags": [],
  1503. "tests": [
  1504. {
  1505. "timeout": 120000,
  1506. "annotations": [],
  1507. "expectedStatus": "passed",
  1508. "projectId": "regression",
  1509. "projectName": "regression",
  1510. "results": [],
  1511. "status": "skipped"
  1512. }
  1513. ],
  1514. "id": "e19882fc992b10cdc2c6-24b85aa3e9705612ee73",
  1515. "file": "regression/06-search.spec.ts",
  1516. "line": 21,
  1517. "column": 7
  1518. }
  1519. ]
  1520. }
  1521. ]
  1522. },
  1523. {
  1524. "title": "regression\\07-comments.spec.ts",
  1525. "file": "regression/07-comments.spec.ts",
  1526. "column": 0,
  1527. "line": 0,
  1528. "specs": [],
  1529. "suites": [
  1530. {
  1531. "title": "评论系统 (Comments)",
  1532. "file": "regression/07-comments.spec.ts",
  1533. "line": 8,
  1534. "column": 6,
  1535. "specs": [
  1536. {
  1537. "title": "C01: 获取评论列表 GET /api/comments/:chapterId",
  1538. "ok": true,
  1539. "tags": [],
  1540. "tests": [
  1541. {
  1542. "timeout": 120000,
  1543. "annotations": [],
  1544. "expectedStatus": "passed",
  1545. "projectId": "regression",
  1546. "projectName": "regression",
  1547. "results": [],
  1548. "status": "skipped"
  1549. }
  1550. ],
  1551. "id": "d70e958210be37be94fb-cad701108e6005075a14",
  1552. "file": "regression/07-comments.spec.ts",
  1553. "line": 13,
  1554. "column": 7
  1555. },
  1556. {
  1557. "title": "C02: 创建评论 POST /api/comments",
  1558. "ok": true,
  1559. "tags": [],
  1560. "tests": [
  1561. {
  1562. "timeout": 120000,
  1563. "annotations": [],
  1564. "expectedStatus": "passed",
  1565. "projectId": "regression",
  1566. "projectName": "regression",
  1567. "results": [],
  1568. "status": "skipped"
  1569. }
  1570. ],
  1571. "id": "d70e958210be37be94fb-68b1ef4dfd28c77c5c96",
  1572. "file": "regression/07-comments.spec.ts",
  1573. "line": 19,
  1574. "column": 7
  1575. },
  1576. {
  1577. "title": "C03: 删除评论 DELETE /api/comments/:id",
  1578. "ok": true,
  1579. "tags": [],
  1580. "tests": [
  1581. {
  1582. "timeout": 120000,
  1583. "annotations": [],
  1584. "expectedStatus": "passed",
  1585. "projectId": "regression",
  1586. "projectName": "regression",
  1587. "results": [],
  1588. "status": "skipped"
  1589. }
  1590. ],
  1591. "id": "d70e958210be37be94fb-a61a46bd43ab01a2a0b9",
  1592. "file": "regression/07-comments.spec.ts",
  1593. "line": 29,
  1594. "column": 7
  1595. }
  1596. ]
  1597. }
  1598. ]
  1599. },
  1600. {
  1601. "title": "regression\\08-notifications.spec.ts",
  1602. "file": "regression/08-notifications.spec.ts",
  1603. "column": 0,
  1604. "line": 0,
  1605. "specs": [],
  1606. "suites": [
  1607. {
  1608. "title": "通知系统 (Notifications)",
  1609. "file": "regression/08-notifications.spec.ts",
  1610. "line": 8,
  1611. "column": 6,
  1612. "specs": [
  1613. {
  1614. "title": "N01: 获取通知列表 GET /api/notifications",
  1615. "ok": true,
  1616. "tags": [],
  1617. "tests": [
  1618. {
  1619. "timeout": 120000,
  1620. "annotations": [],
  1621. "expectedStatus": "passed",
  1622. "projectId": "regression",
  1623. "projectName": "regression",
  1624. "results": [],
  1625. "status": "skipped"
  1626. }
  1627. ],
  1628. "id": "3e1150f91c4be2b2170a-1dcab96b916f2fc2925b",
  1629. "file": "regression/08-notifications.spec.ts",
  1630. "line": 12,
  1631. "column": 7
  1632. },
  1633. {
  1634. "title": "N02: 标记已读 POST /api/notifications/read",
  1635. "ok": true,
  1636. "tags": [],
  1637. "tests": [
  1638. {
  1639. "timeout": 120000,
  1640. "annotations": [],
  1641. "expectedStatus": "passed",
  1642. "projectId": "regression",
  1643. "projectName": "regression",
  1644. "results": [],
  1645. "status": "skipped"
  1646. }
  1647. ],
  1648. "id": "3e1150f91c4be2b2170a-3198da202c42106481a5",
  1649. "file": "regression/08-notifications.spec.ts",
  1650. "line": 18,
  1651. "column": 7
  1652. },
  1653. {
  1654. "title": "N03: 获取未读数量 - 该接口不存在",
  1655. "ok": true,
  1656. "tags": [],
  1657. "tests": [
  1658. {
  1659. "timeout": 120000,
  1660. "annotations": [],
  1661. "expectedStatus": "passed",
  1662. "projectId": "regression",
  1663. "projectName": "regression",
  1664. "results": [],
  1665. "status": "skipped"
  1666. }
  1667. ],
  1668. "id": "3e1150f91c4be2b2170a-0f427a3d7230a57b5e12",
  1669. "file": "regression/08-notifications.spec.ts",
  1670. "line": 24,
  1671. "column": 7
  1672. }
  1673. ]
  1674. }
  1675. ]
  1676. },
  1677. {
  1678. "title": "regression\\09-bgm.spec.ts",
  1679. "file": "regression/09-bgm.spec.ts",
  1680. "column": 0,
  1681. "line": 0,
  1682. "specs": [],
  1683. "suites": [
  1684. {
  1685. "title": "背景音乐 (BGM)",
  1686. "file": "regression/09-bgm.spec.ts",
  1687. "line": 7,
  1688. "column": 6,
  1689. "specs": [
  1690. {
  1691. "title": "B01: 获取BGM列表 GET /api/bgm",
  1692. "ok": true,
  1693. "tags": [],
  1694. "tests": [
  1695. {
  1696. "timeout": 120000,
  1697. "annotations": [],
  1698. "expectedStatus": "passed",
  1699. "projectId": "regression",
  1700. "projectName": "regression",
  1701. "results": [],
  1702. "status": "skipped"
  1703. }
  1704. ],
  1705. "id": "0ffd8d7c353bf43f2264-dde394650b918392c48c",
  1706. "file": "regression/09-bgm.spec.ts",
  1707. "line": 11,
  1708. "column": 7
  1709. },
  1710. {
  1711. "title": "B02: 获取BGM分类 GET /api/bgm/categories",
  1712. "ok": true,
  1713. "tags": [],
  1714. "tests": [
  1715. {
  1716. "timeout": 120000,
  1717. "annotations": [],
  1718. "expectedStatus": "passed",
  1719. "projectId": "regression",
  1720. "projectName": "regression",
  1721. "results": [],
  1722. "status": "skipped"
  1723. }
  1724. ],
  1725. "id": "0ffd8d7c353bf43f2264-d918b26f25690517762d",
  1726. "file": "regression/09-bgm.spec.ts",
  1727. "line": 16,
  1728. "column": 7
  1729. }
  1730. ]
  1731. }
  1732. ]
  1733. },
  1734. {
  1735. "title": "regression\\10-audio-edit.spec.ts",
  1736. "file": "regression/10-audio-edit.spec.ts",
  1737. "column": 0,
  1738. "line": 0,
  1739. "specs": [],
  1740. "suites": [
  1741. {
  1742. "title": "音频编辑 (AudioEdit)",
  1743. "file": "regression/10-audio-edit.spec.ts",
  1744. "line": 8,
  1745. "column": 6,
  1746. "specs": [
  1747. {
  1748. "title": "AE01: 获取音频编辑列表 - 路由不存在,跳过",
  1749. "ok": true,
  1750. "tags": [],
  1751. "tests": [
  1752. {
  1753. "timeout": 120000,
  1754. "annotations": [],
  1755. "expectedStatus": "passed",
  1756. "projectId": "regression",
  1757. "projectName": "regression",
  1758. "results": [],
  1759. "status": "skipped"
  1760. }
  1761. ],
  1762. "id": "493db5843908811ac21c-ecafc39661a3895e5b5c",
  1763. "file": "regression/10-audio-edit.spec.ts",
  1764. "line": 12,
  1765. "column": 7
  1766. },
  1767. {
  1768. "title": "AE02: 音频合并 POST /api/audio/merge",
  1769. "ok": true,
  1770. "tags": [],
  1771. "tests": [
  1772. {
  1773. "timeout": 120000,
  1774. "annotations": [],
  1775. "expectedStatus": "passed",
  1776. "projectId": "regression",
  1777. "projectName": "regression",
  1778. "results": [],
  1779. "status": "skipped"
  1780. }
  1781. ],
  1782. "id": "493db5843908811ac21c-6b58302690a988e3d052",
  1783. "file": "regression/10-audio-edit.spec.ts",
  1784. "line": 17,
  1785. "column": 7
  1786. }
  1787. ]
  1788. }
  1789. ]
  1790. },
  1791. {
  1792. "title": "regression\\11-book-generator.spec.ts",
  1793. "file": "regression/11-book-generator.spec.ts",
  1794. "column": 0,
  1795. "line": 0,
  1796. "specs": [],
  1797. "suites": [
  1798. {
  1799. "title": "AI书籍生成 (BookGenerator)",
  1800. "file": "regression/11-book-generator.spec.ts",
  1801. "line": 11,
  1802. "column": 6,
  1803. "specs": [
  1804. {
  1805. "title": "BG01: 获取书籍列表 GET /api/book-generator/langgraph/books",
  1806. "ok": true,
  1807. "tags": [],
  1808. "tests": [
  1809. {
  1810. "timeout": 120000,
  1811. "annotations": [],
  1812. "expectedStatus": "passed",
  1813. "projectId": "regression",
  1814. "projectName": "regression",
  1815. "results": [],
  1816. "status": "skipped"
  1817. }
  1818. ],
  1819. "id": "6d878748c1f51cb1a355-ec7d560be508677960ea",
  1820. "file": "regression/11-book-generator.spec.ts",
  1821. "line": 16,
  1822. "column": 7
  1823. },
  1824. {
  1825. "title": "BG02: 创建书籍 POST /api/book-generator/langgraph/books",
  1826. "ok": true,
  1827. "tags": [],
  1828. "tests": [
  1829. {
  1830. "timeout": 120000,
  1831. "annotations": [],
  1832. "expectedStatus": "passed",
  1833. "projectId": "regression",
  1834. "projectName": "regression",
  1835. "results": [],
  1836. "status": "skipped"
  1837. }
  1838. ],
  1839. "id": "6d878748c1f51cb1a355-df23888bd4c4e436e1c7",
  1840. "file": "regression/11-book-generator.spec.ts",
  1841. "line": 21,
  1842. "column": 7
  1843. },
  1844. {
  1845. "title": "BG03: 获取书籍详情 GET /api/book-generator/langgraph/books/:id",
  1846. "ok": true,
  1847. "tags": [],
  1848. "tests": [
  1849. {
  1850. "timeout": 120000,
  1851. "annotations": [],
  1852. "expectedStatus": "passed",
  1853. "projectId": "regression",
  1854. "projectName": "regression",
  1855. "results": [],
  1856. "status": "skipped"
  1857. }
  1858. ],
  1859. "id": "6d878748c1f51cb1a355-792eb79a3f6f8e14a082",
  1860. "file": "regression/11-book-generator.spec.ts",
  1861. "line": 37,
  1862. "column": 7
  1863. },
  1864. {
  1865. "title": "BG04: 获取工作流状态 GET /api/book-generator/langgraph/workflow/:id",
  1866. "ok": true,
  1867. "tags": [],
  1868. "tests": [
  1869. {
  1870. "timeout": 120000,
  1871. "annotations": [],
  1872. "expectedStatus": "passed",
  1873. "projectId": "regression",
  1874. "projectName": "regression",
  1875. "results": [],
  1876. "status": "skipped"
  1877. }
  1878. ],
  1879. "id": "6d878748c1f51cb1a355-bb9701e4f2821a49be83",
  1880. "file": "regression/11-book-generator.spec.ts",
  1881. "line": 43,
  1882. "column": 7
  1883. },
  1884. {
  1885. "title": "BG05: 获取生成进度 GET /api/book-generator/langgraph/books/:id/progress",
  1886. "ok": true,
  1887. "tags": [],
  1888. "tests": [
  1889. {
  1890. "timeout": 120000,
  1891. "annotations": [],
  1892. "expectedStatus": "passed",
  1893. "projectId": "regression",
  1894. "projectName": "regression",
  1895. "results": [],
  1896. "status": "skipped"
  1897. }
  1898. ],
  1899. "id": "6d878748c1f51cb1a355-2f0a113e2c35e74d80f3",
  1900. "file": "regression/11-book-generator.spec.ts",
  1901. "line": 49,
  1902. "column": 7
  1903. },
  1904. {
  1905. "title": "BG06: 获取完整内容 GET /api/book-generator/langgraph/books/:id/full-content",
  1906. "ok": true,
  1907. "tags": [],
  1908. "tests": [
  1909. {
  1910. "timeout": 120000,
  1911. "annotations": [],
  1912. "expectedStatus": "passed",
  1913. "projectId": "regression",
  1914. "projectName": "regression",
  1915. "results": [],
  1916. "status": "skipped"
  1917. }
  1918. ],
  1919. "id": "6d878748c1f51cb1a355-21af356b3a70d5131d17",
  1920. "file": "regression/11-book-generator.spec.ts",
  1921. "line": 55,
  1922. "column": 7
  1923. },
  1924. {
  1925. "title": "BG07: 生成大纲 POST /api/book-generator/langgraph/books/:id/outline",
  1926. "ok": true,
  1927. "tags": [],
  1928. "tests": [
  1929. {
  1930. "timeout": 120000,
  1931. "annotations": [],
  1932. "expectedStatus": "passed",
  1933. "projectId": "regression",
  1934. "projectName": "regression",
  1935. "results": [],
  1936. "status": "skipped"
  1937. }
  1938. ],
  1939. "id": "6d878748c1f51cb1a355-bf443c5ddcb4e55cb3a9",
  1940. "file": "regression/11-book-generator.spec.ts",
  1941. "line": 62,
  1942. "column": 7
  1943. },
  1944. {
  1945. "title": "BG08: 切换发布状态 PUT /api/book-generator/langgraph/books/:id/publish",
  1946. "ok": true,
  1947. "tags": [],
  1948. "tests": [
  1949. {
  1950. "timeout": 120000,
  1951. "annotations": [],
  1952. "expectedStatus": "passed",
  1953. "projectId": "regression",
  1954. "projectName": "regression",
  1955. "results": [],
  1956. "status": "skipped"
  1957. }
  1958. ],
  1959. "id": "6d878748c1f51cb1a355-ae7ccc3787ad1d036a2d",
  1960. "file": "regression/11-book-generator.spec.ts",
  1961. "line": 68,
  1962. "column": 7
  1963. },
  1964. {
  1965. "title": "BG09: AI生成接口 - 仅 POST /api/book-generator/ai-generate,跳过 GET",
  1966. "ok": true,
  1967. "tags": [],
  1968. "tests": [
  1969. {
  1970. "timeout": 120000,
  1971. "annotations": [],
  1972. "expectedStatus": "passed",
  1973. "projectId": "regression",
  1974. "projectName": "regression",
  1975. "results": [],
  1976. "status": "skipped"
  1977. }
  1978. ],
  1979. "id": "6d878748c1f51cb1a355-4c11f2b7db3e27b6eb8a",
  1980. "file": "regression/11-book-generator.spec.ts",
  1981. "line": 75,
  1982. "column": 7
  1983. },
  1984. {
  1985. "title": "BG10: 删除测试书籍 DELETE /api/book-generator/langgraph/books/:id",
  1986. "ok": true,
  1987. "tags": [],
  1988. "tests": [
  1989. {
  1990. "timeout": 120000,
  1991. "annotations": [],
  1992. "expectedStatus": "passed",
  1993. "projectId": "regression",
  1994. "projectName": "regression",
  1995. "results": [],
  1996. "status": "skipped"
  1997. }
  1998. ],
  1999. "id": "6d878748c1f51cb1a355-5a5a35d7ec4d06382258",
  2000. "file": "regression/11-book-generator.spec.ts",
  2001. "line": 81,
  2002. "column": 7
  2003. }
  2004. ]
  2005. }
  2006. ]
  2007. },
  2008. {
  2009. "title": "regression\\12-album.spec.ts",
  2010. "file": "regression/12-album.spec.ts",
  2011. "column": 0,
  2012. "line": 0,
  2013. "specs": [],
  2014. "suites": [
  2015. {
  2016. "title": "专辑管理 (Album)",
  2017. "file": "regression/12-album.spec.ts",
  2018. "line": 7,
  2019. "column": 6,
  2020. "specs": [
  2021. {
  2022. "title": "AL01: 获取专辑列表 GET /api/book-generator/albums",
  2023. "ok": true,
  2024. "tags": [],
  2025. "tests": [
  2026. {
  2027. "timeout": 120000,
  2028. "annotations": [],
  2029. "expectedStatus": "passed",
  2030. "projectId": "regression",
  2031. "projectName": "regression",
  2032. "results": [],
  2033. "status": "skipped"
  2034. }
  2035. ],
  2036. "id": "320a97b4c6176ac578bb-d565056ec08f65de56d2",
  2037. "file": "regression/12-album.spec.ts",
  2038. "line": 11,
  2039. "column": 7
  2040. },
  2041. {
  2042. "title": "AL02: 获取专辑章节 GET /api/book-generator/albums/:id/chapters",
  2043. "ok": true,
  2044. "tags": [],
  2045. "tests": [
  2046. {
  2047. "timeout": 120000,
  2048. "annotations": [],
  2049. "expectedStatus": "passed",
  2050. "projectId": "regression",
  2051. "projectName": "regression",
  2052. "results": [],
  2053. "status": "skipped"
  2054. }
  2055. ],
  2056. "id": "320a97b4c6176ac578bb-6a3e720bf6a1893c85cd",
  2057. "file": "regression/12-album.spec.ts",
  2058. "line": 16,
  2059. "column": 7
  2060. },
  2061. {
  2062. "title": "AL03: 重命名专辑 PUT /api/book-generator/album/:id/rename",
  2063. "ok": true,
  2064. "tags": [],
  2065. "tests": [
  2066. {
  2067. "timeout": 120000,
  2068. "annotations": [],
  2069. "expectedStatus": "passed",
  2070. "projectId": "regression",
  2071. "projectName": "regression",
  2072. "results": [],
  2073. "status": "skipped"
  2074. }
  2075. ],
  2076. "id": "320a97b4c6176ac578bb-7d533238dbd38042cc0a",
  2077. "file": "regression/12-album.spec.ts",
  2078. "line": 21,
  2079. "column": 7
  2080. },
  2081. {
  2082. "title": "AL04: 重命名章节 PUT /api/book-generator/album/:bookId/chapters/:chapterId/rename",
  2083. "ok": true,
  2084. "tags": [],
  2085. "tests": [
  2086. {
  2087. "timeout": 120000,
  2088. "annotations": [],
  2089. "expectedStatus": "passed",
  2090. "projectId": "regression",
  2091. "projectName": "regression",
  2092. "results": [],
  2093. "status": "skipped"
  2094. }
  2095. ],
  2096. "id": "320a97b4c6176ac578bb-871f25fa0567726ea237",
  2097. "file": "regression/12-album.spec.ts",
  2098. "line": 26,
  2099. "column": 7
  2100. },
  2101. {
  2102. "title": "AL05: 移动章节 PUT /api/book-generator/album/:bookId/chapters/:chapterId/move",
  2103. "ok": true,
  2104. "tags": [],
  2105. "tests": [
  2106. {
  2107. "timeout": 120000,
  2108. "annotations": [],
  2109. "expectedStatus": "passed",
  2110. "projectId": "regression",
  2111. "projectName": "regression",
  2112. "results": [],
  2113. "status": "skipped"
  2114. }
  2115. ],
  2116. "id": "320a97b4c6176ac578bb-6e4434517cdecfcc9ba5",
  2117. "file": "regression/12-album.spec.ts",
  2118. "line": 32,
  2119. "column": 7
  2120. }
  2121. ]
  2122. }
  2123. ]
  2124. },
  2125. {
  2126. "title": "regression\\13-playlists.spec.ts",
  2127. "file": "regression/13-playlists.spec.ts",
  2128. "column": 0,
  2129. "line": 0,
  2130. "specs": [],
  2131. "suites": [
  2132. {
  2133. "title": "播放列表 (Playlists)",
  2134. "file": "regression/13-playlists.spec.ts",
  2135. "line": 9,
  2136. "column": 6,
  2137. "specs": [
  2138. {
  2139. "title": "PL01: 获取播放列表 GET /api/playlists",
  2140. "ok": true,
  2141. "tags": [],
  2142. "tests": [
  2143. {
  2144. "timeout": 120000,
  2145. "annotations": [],
  2146. "expectedStatus": "passed",
  2147. "projectId": "regression",
  2148. "projectName": "regression",
  2149. "results": [],
  2150. "status": "skipped"
  2151. }
  2152. ],
  2153. "id": "ee1ab66486baee0dc6ae-fc71e98e537d77e390e2",
  2154. "file": "regression/13-playlists.spec.ts",
  2155. "line": 13,
  2156. "column": 7
  2157. },
  2158. {
  2159. "title": "PL02: 创建播放列表 POST /api/playlists",
  2160. "ok": true,
  2161. "tags": [],
  2162. "tests": [
  2163. {
  2164. "timeout": 120000,
  2165. "annotations": [],
  2166. "expectedStatus": "passed",
  2167. "projectId": "regression",
  2168. "projectName": "regression",
  2169. "results": [],
  2170. "status": "skipped"
  2171. }
  2172. ],
  2173. "id": "ee1ab66486baee0dc6ae-e84d2c860353e73a0dde",
  2174. "file": "regression/13-playlists.spec.ts",
  2175. "line": 18,
  2176. "column": 7
  2177. },
  2178. {
  2179. "title": "PL03: 获取播放列表详情 GET /api/playlists/:id",
  2180. "ok": true,
  2181. "tags": [],
  2182. "tests": [
  2183. {
  2184. "timeout": 120000,
  2185. "annotations": [],
  2186. "expectedStatus": "passed",
  2187. "projectId": "regression",
  2188. "projectName": "regression",
  2189. "results": [],
  2190. "status": "skipped"
  2191. }
  2192. ],
  2193. "id": "ee1ab66486baee0dc6ae-d4c63d2a3af8fa22e5b7",
  2194. "file": "regression/13-playlists.spec.ts",
  2195. "line": 27,
  2196. "column": 7
  2197. }
  2198. ]
  2199. },
  2200. {
  2201. "title": "草稿箱 (Drafts)",
  2202. "file": "regression/13-playlists.spec.ts",
  2203. "line": 34,
  2204. "column": 6,
  2205. "specs": [
  2206. {
  2207. "title": "DR01: 获取草稿列表 GET /api/drafts",
  2208. "ok": true,
  2209. "tags": [],
  2210. "tests": [
  2211. {
  2212. "timeout": 120000,
  2213. "annotations": [],
  2214. "expectedStatus": "passed",
  2215. "projectId": "regression",
  2216. "projectName": "regression",
  2217. "results": [],
  2218. "status": "skipped"
  2219. }
  2220. ],
  2221. "id": "ee1ab66486baee0dc6ae-da42ae95bc058bc728fb",
  2222. "file": "regression/13-playlists.spec.ts",
  2223. "line": 38,
  2224. "column": 7
  2225. },
  2226. {
  2227. "title": "DR02: 创建草稿 POST /api/drafts",
  2228. "ok": true,
  2229. "tags": [],
  2230. "tests": [
  2231. {
  2232. "timeout": 120000,
  2233. "annotations": [],
  2234. "expectedStatus": "passed",
  2235. "projectId": "regression",
  2236. "projectName": "regression",
  2237. "results": [],
  2238. "status": "skipped"
  2239. }
  2240. ],
  2241. "id": "ee1ab66486baee0dc6ae-14b7e2c79ecb7ec74c57",
  2242. "file": "regression/13-playlists.spec.ts",
  2243. "line": 43,
  2244. "column": 7
  2245. },
  2246. {
  2247. "title": "DR03: 删除草稿 DELETE /api/drafts/:id",
  2248. "ok": true,
  2249. "tags": [],
  2250. "tests": [
  2251. {
  2252. "timeout": 120000,
  2253. "annotations": [],
  2254. "expectedStatus": "passed",
  2255. "projectId": "regression",
  2256. "projectName": "regression",
  2257. "results": [],
  2258. "status": "skipped"
  2259. }
  2260. ],
  2261. "id": "ee1ab66486baee0dc6ae-7625a8252480539193ec",
  2262. "file": "regression/13-playlists.spec.ts",
  2263. "line": 51,
  2264. "column": 7
  2265. }
  2266. ]
  2267. },
  2268. {
  2269. "title": "视频生成 (VideoGenerator)",
  2270. "file": "regression/13-playlists.spec.ts",
  2271. "line": 59,
  2272. "column": 6,
  2273. "specs": [
  2274. {
  2275. "title": "VG01: 获取视频项目列表 GET /api/video/projects",
  2276. "ok": true,
  2277. "tags": [],
  2278. "tests": [
  2279. {
  2280. "timeout": 120000,
  2281. "annotations": [],
  2282. "expectedStatus": "passed",
  2283. "projectId": "regression",
  2284. "projectName": "regression",
  2285. "results": [],
  2286. "status": "skipped"
  2287. }
  2288. ],
  2289. "id": "ee1ab66486baee0dc6ae-f588f79a18dbf604bf86",
  2290. "file": "regression/13-playlists.spec.ts",
  2291. "line": 63,
  2292. "column": 7
  2293. },
  2294. {
  2295. "title": "VG02: 创建视频项目 POST /api/video/projects",
  2296. "ok": true,
  2297. "tags": [],
  2298. "tests": [
  2299. {
  2300. "timeout": 120000,
  2301. "annotations": [],
  2302. "expectedStatus": "passed",
  2303. "projectId": "regression",
  2304. "projectName": "regression",
  2305. "results": [],
  2306. "status": "skipped"
  2307. }
  2308. ],
  2309. "id": "ee1ab66486baee0dc6ae-29098b65481eb9baf4d0",
  2310. "file": "regression/13-playlists.spec.ts",
  2311. "line": 69,
  2312. "column": 7
  2313. },
  2314. {
  2315. "title": "VG03: 获取素材列表 GET /api/video/materials",
  2316. "ok": true,
  2317. "tags": [],
  2318. "tests": [
  2319. {
  2320. "timeout": 120000,
  2321. "annotations": [],
  2322. "expectedStatus": "passed",
  2323. "projectId": "regression",
  2324. "projectName": "regression",
  2325. "results": [],
  2326. "status": "skipped"
  2327. }
  2328. ],
  2329. "id": "ee1ab66486baee0dc6ae-2591d6fd36015d4cc747",
  2330. "file": "regression/13-playlists.spec.ts",
  2331. "line": 75,
  2332. "column": 7
  2333. }
  2334. ]
  2335. },
  2336. {
  2337. "title": "订阅支付 (Subscription)",
  2338. "file": "regression/13-playlists.spec.ts",
  2339. "line": 83,
  2340. "column": 6,
  2341. "specs": [
  2342. {
  2343. "title": "SU01: 获取套餐列表 GET /api/subscription/plans",
  2344. "ok": true,
  2345. "tags": [],
  2346. "tests": [
  2347. {
  2348. "timeout": 120000,
  2349. "annotations": [],
  2350. "expectedStatus": "passed",
  2351. "projectId": "regression",
  2352. "projectName": "regression",
  2353. "results": [],
  2354. "status": "skipped"
  2355. }
  2356. ],
  2357. "id": "ee1ab66486baee0dc6ae-b4aee8df4ae69137adc0",
  2358. "file": "regression/13-playlists.spec.ts",
  2359. "line": 87,
  2360. "column": 7
  2361. },
  2362. {
  2363. "title": "SU02: 获取余额 GET /api/subscription/balance",
  2364. "ok": true,
  2365. "tags": [],
  2366. "tests": [
  2367. {
  2368. "timeout": 120000,
  2369. "annotations": [],
  2370. "expectedStatus": "passed",
  2371. "projectId": "regression",
  2372. "projectName": "regression",
  2373. "results": [],
  2374. "status": "skipped"
  2375. }
  2376. ],
  2377. "id": "ee1ab66486baee0dc6ae-5b786ecdb88ed0075e3d",
  2378. "file": "regression/13-playlists.spec.ts",
  2379. "line": 92,
  2380. "column": 7
  2381. },
  2382. {
  2383. "title": "SU03: 创建订单 POST /api/subscription/orders - 订单接口需支付流程,跳过",
  2384. "ok": true,
  2385. "tags": [],
  2386. "tests": [
  2387. {
  2388. "timeout": 120000,
  2389. "annotations": [],
  2390. "expectedStatus": "passed",
  2391. "projectId": "regression",
  2392. "projectName": "regression",
  2393. "results": [],
  2394. "status": "skipped"
  2395. }
  2396. ],
  2397. "id": "ee1ab66486baee0dc6ae-3f1374a5076a16badde0",
  2398. "file": "regression/13-playlists.spec.ts",
  2399. "line": 97,
  2400. "column": 7
  2401. }
  2402. ]
  2403. }
  2404. ]
  2405. },
  2406. {
  2407. "title": "regression\\17-publish.spec.ts",
  2408. "file": "regression/17-publish.spec.ts",
  2409. "column": 0,
  2410. "line": 0,
  2411. "specs": [],
  2412. "suites": [
  2413. {
  2414. "title": "跨平台发布 (Publish)",
  2415. "file": "regression/17-publish.spec.ts",
  2416. "line": 9,
  2417. "column": 6,
  2418. "specs": [
  2419. {
  2420. "title": "PU01: 获取平台账号 GET /api/publish/accounts",
  2421. "ok": true,
  2422. "tags": [],
  2423. "tests": [
  2424. {
  2425. "timeout": 120000,
  2426. "annotations": [],
  2427. "expectedStatus": "passed",
  2428. "projectId": "regression",
  2429. "projectName": "regression",
  2430. "results": [],
  2431. "status": "skipped"
  2432. }
  2433. ],
  2434. "id": "3a3dffee0b5ebb1bcd41-4d07f903deee02ae52e4",
  2435. "file": "regression/17-publish.spec.ts",
  2436. "line": 13,
  2437. "column": 7
  2438. },
  2439. {
  2440. "title": "PU02: 获取发布任务列表 GET /api/publish/tasks",
  2441. "ok": true,
  2442. "tags": [],
  2443. "tests": [
  2444. {
  2445. "timeout": 120000,
  2446. "annotations": [],
  2447. "expectedStatus": "passed",
  2448. "projectId": "regression",
  2449. "projectName": "regression",
  2450. "results": [],
  2451. "status": "skipped"
  2452. }
  2453. ],
  2454. "id": "3a3dffee0b5ebb1bcd41-c7fef09d5d35dd999d9e",
  2455. "file": "regression/17-publish.spec.ts",
  2456. "line": 19,
  2457. "column": 7
  2458. }
  2459. ]
  2460. },
  2461. {
  2462. "title": "会员中心 (Member)",
  2463. "file": "regression/17-publish.spec.ts",
  2464. "line": 27,
  2465. "column": 6,
  2466. "specs": [
  2467. {
  2468. "title": "MB01: 获取会员状态 GET /api/member/status",
  2469. "ok": true,
  2470. "tags": [],
  2471. "tests": [
  2472. {
  2473. "timeout": 120000,
  2474. "annotations": [],
  2475. "expectedStatus": "passed",
  2476. "projectId": "regression",
  2477. "projectName": "regression",
  2478. "results": [],
  2479. "status": "skipped"
  2480. }
  2481. ],
  2482. "id": "3a3dffee0b5ebb1bcd41-58959305dc9c789e35eb",
  2483. "file": "regression/17-publish.spec.ts",
  2484. "line": 31,
  2485. "column": 7
  2486. }
  2487. ]
  2488. },
  2489. {
  2490. "title": "用户反馈 (Feedback)",
  2491. "file": "regression/17-publish.spec.ts",
  2492. "line": 38,
  2493. "column": 6,
  2494. "specs": [
  2495. {
  2496. "title": "FB01: 获取反馈列表 - 反馈仅支持 POST,跳过 GET",
  2497. "ok": true,
  2498. "tags": [],
  2499. "tests": [
  2500. {
  2501. "timeout": 120000,
  2502. "annotations": [],
  2503. "expectedStatus": "passed",
  2504. "projectId": "regression",
  2505. "projectName": "regression",
  2506. "results": [],
  2507. "status": "skipped"
  2508. }
  2509. ],
  2510. "id": "3a3dffee0b5ebb1bcd41-2c0d38e5e1ab15c12e3e",
  2511. "file": "regression/17-publish.spec.ts",
  2512. "line": 42,
  2513. "column": 7
  2514. },
  2515. {
  2516. "title": "FB02: 提交反馈 POST /api/feedback",
  2517. "ok": true,
  2518. "tags": [],
  2519. "tests": [
  2520. {
  2521. "timeout": 120000,
  2522. "annotations": [],
  2523. "expectedStatus": "passed",
  2524. "projectId": "regression",
  2525. "projectName": "regression",
  2526. "results": [],
  2527. "status": "skipped"
  2528. }
  2529. ],
  2530. "id": "3a3dffee0b5ebb1bcd41-f118737bf54c48b43e20",
  2531. "file": "regression/17-publish.spec.ts",
  2532. "line": 47,
  2533. "column": 7
  2534. }
  2535. ]
  2536. },
  2537. {
  2538. "title": "分享功能 (Share)",
  2539. "file": "regression/17-publish.spec.ts",
  2540. "line": 58,
  2541. "column": 6,
  2542. "specs": [
  2543. {
  2544. "title": "SH01: 获取分享链接 GET /api/share?audioId=xxx",
  2545. "ok": true,
  2546. "tags": [],
  2547. "tests": [
  2548. {
  2549. "timeout": 120000,
  2550. "annotations": [],
  2551. "expectedStatus": "passed",
  2552. "projectId": "regression",
  2553. "projectName": "regression",
  2554. "results": [],
  2555. "status": "skipped"
  2556. }
  2557. ],
  2558. "id": "3a3dffee0b5ebb1bcd41-de055e1ef4c6dc364873",
  2559. "file": "regression/17-publish.spec.ts",
  2560. "line": 62,
  2561. "column": 7
  2562. }
  2563. ]
  2564. },
  2565. {
  2566. "title": "用户偏好 (Preferences)",
  2567. "file": "regression/17-publish.spec.ts",
  2568. "line": 70,
  2569. "column": 6,
  2570. "specs": [
  2571. {
  2572. "title": "PR01: 获取偏好 GET /api/user/preferences",
  2573. "ok": true,
  2574. "tags": [],
  2575. "tests": [
  2576. {
  2577. "timeout": 120000,
  2578. "annotations": [],
  2579. "expectedStatus": "passed",
  2580. "projectId": "regression",
  2581. "projectName": "regression",
  2582. "results": [],
  2583. "status": "skipped"
  2584. }
  2585. ],
  2586. "id": "3a3dffee0b5ebb1bcd41-d52c50798dc83d2c9e69",
  2587. "file": "regression/17-publish.spec.ts",
  2588. "line": 74,
  2589. "column": 7
  2590. },
  2591. {
  2592. "title": "PR02: 更新偏好 PUT /api/user/preferences",
  2593. "ok": true,
  2594. "tags": [],
  2595. "tests": [
  2596. {
  2597. "timeout": 120000,
  2598. "annotations": [],
  2599. "expectedStatus": "passed",
  2600. "projectId": "regression",
  2601. "projectName": "regression",
  2602. "results": [],
  2603. "status": "skipped"
  2604. }
  2605. ],
  2606. "id": "3a3dffee0b5ebb1bcd41-fa138451487dc4eac013",
  2607. "file": "regression/17-publish.spec.ts",
  2608. "line": 79,
  2609. "column": 7
  2610. }
  2611. ]
  2612. },
  2613. {
  2614. "title": "分类浏览 (Categories)",
  2615. "file": "regression/17-publish.spec.ts",
  2616. "line": 89,
  2617. "column": 6,
  2618. "specs": [
  2619. {
  2620. "title": "CT01: 获取分类列表 GET /api/categories",
  2621. "ok": true,
  2622. "tags": [],
  2623. "tests": [
  2624. {
  2625. "timeout": 120000,
  2626. "annotations": [],
  2627. "expectedStatus": "passed",
  2628. "projectId": "regression",
  2629. "projectName": "regression",
  2630. "results": [],
  2631. "status": "skipped"
  2632. }
  2633. ],
  2634. "id": "3a3dffee0b5ebb1bcd41-260ff3386dec7e33d8a7",
  2635. "file": "regression/17-publish.spec.ts",
  2636. "line": 93,
  2637. "column": 7
  2638. }
  2639. ]
  2640. },
  2641. {
  2642. "title": "签到功能 (Sign)",
  2643. "file": "regression/17-publish.spec.ts",
  2644. "line": 100,
  2645. "column": 6,
  2646. "specs": [
  2647. {
  2648. "title": "SG01: 获取签到状态 GET /api/sign/status",
  2649. "ok": true,
  2650. "tags": [],
  2651. "tests": [
  2652. {
  2653. "timeout": 120000,
  2654. "annotations": [],
  2655. "expectedStatus": "passed",
  2656. "projectId": "regression",
  2657. "projectName": "regression",
  2658. "results": [],
  2659. "status": "skipped"
  2660. }
  2661. ],
  2662. "id": "3a3dffee0b5ebb1bcd41-cd3d3a0afb9a5553afda",
  2663. "file": "regression/17-publish.spec.ts",
  2664. "line": 104,
  2665. "column": 7
  2666. },
  2667. {
  2668. "title": "SG02: 执行签到 POST /api/sign",
  2669. "ok": true,
  2670. "tags": [],
  2671. "tests": [
  2672. {
  2673. "timeout": 120000,
  2674. "annotations": [],
  2675. "expectedStatus": "passed",
  2676. "projectId": "regression",
  2677. "projectName": "regression",
  2678. "results": [],
  2679. "status": "skipped"
  2680. }
  2681. ],
  2682. "id": "3a3dffee0b5ebb1bcd41-5db86eae6373807fd3c9",
  2683. "file": "regression/17-publish.spec.ts",
  2684. "line": 109,
  2685. "column": 7
  2686. }
  2687. ]
  2688. }
  2689. ]
  2690. },
  2691. {
  2692. "title": "regression\\23-frontend-e2e.spec.ts",
  2693. "file": "regression/23-frontend-e2e.spec.ts",
  2694. "column": 0,
  2695. "line": 0,
  2696. "specs": [],
  2697. "suites": [
  2698. {
  2699. "title": "前端 UI 完整验收",
  2700. "file": "regression/23-frontend-e2e.spec.ts",
  2701. "line": 32,
  2702. "column": 6,
  2703. "specs": [
  2704. {
  2705. "title": "E01: 首页 - 搜索栏/通知铃铛/最近收听/点击搜索",
  2706. "ok": true,
  2707. "tags": [],
  2708. "tests": [
  2709. {
  2710. "timeout": 120000,
  2711. "annotations": [],
  2712. "expectedStatus": "passed",
  2713. "projectId": "regression",
  2714. "projectName": "regression",
  2715. "results": [],
  2716. "status": "skipped"
  2717. }
  2718. ],
  2719. "id": "6c3eced42a9de441f456-334d1d2b24e887121042",
  2720. "file": "regression/23-frontend-e2e.spec.ts",
  2721. "line": 37,
  2722. "column": 7
  2723. },
  2724. {
  2725. "title": "E02: 生成音频页 - 文本输入/音色选择/生成按钮/点击交互",
  2726. "ok": true,
  2727. "tags": [],
  2728. "tests": [
  2729. {
  2730. "timeout": 120000,
  2731. "annotations": [],
  2732. "expectedStatus": "passed",
  2733. "projectId": "regression",
  2734. "projectName": "regression",
  2735. "results": [],
  2736. "status": "skipped"
  2737. }
  2738. ],
  2739. "id": "6c3eced42a9de441f456-d3f698634e4866b8acac",
  2740. "file": "regression/23-frontend-e2e.spec.ts",
  2741. "line": 61,
  2742. "column": 7
  2743. },
  2744. {
  2745. "title": "E03: 书籍生成列表页 - 空状态/创建按钮/点击创建",
  2746. "ok": true,
  2747. "tags": [],
  2748. "tests": [
  2749. {
  2750. "timeout": 120000,
  2751. "annotations": [],
  2752. "expectedStatus": "passed",
  2753. "projectId": "regression",
  2754. "projectName": "regression",
  2755. "results": [],
  2756. "status": "skipped"
  2757. }
  2758. ],
  2759. "id": "6c3eced42a9de441f456-dcb90c4257ae00062787",
  2760. "file": "regression/23-frontend-e2e.spec.ts",
  2761. "line": 86,
  2762. "column": 7
  2763. },
  2764. {
  2765. "title": "E04: 我的页面 - 用户卡片/菜单项点击/退出登录",
  2766. "ok": true,
  2767. "tags": [],
  2768. "tests": [
  2769. {
  2770. "timeout": 120000,
  2771. "annotations": [],
  2772. "expectedStatus": "passed",
  2773. "projectId": "regression",
  2774. "projectName": "regression",
  2775. "results": [],
  2776. "status": "skipped"
  2777. }
  2778. ],
  2779. "id": "6c3eced42a9de441f456-69325878d4bb71a155fc",
  2780. "file": "regression/23-frontend-e2e.spec.ts",
  2781. "line": 105,
  2782. "column": 7
  2783. },
  2784. {
  2785. "title": "E05: 播放器页面 - 播放控件/播放列表/音频操作",
  2786. "ok": true,
  2787. "tags": [],
  2788. "tests": [
  2789. {
  2790. "timeout": 120000,
  2791. "annotations": [],
  2792. "expectedStatus": "passed",
  2793. "projectId": "regression",
  2794. "projectName": "regression",
  2795. "results": [],
  2796. "status": "skipped"
  2797. }
  2798. ],
  2799. "id": "6c3eced42a9de441f456-c2236059e45567d9a205",
  2800. "file": "regression/23-frontend-e2e.spec.ts",
  2801. "line": 149,
  2802. "column": 7
  2803. },
  2804. {
  2805. "title": "E06: 创建书籍页(一键模式) - 表单输入/规模选择/模板应用/创建按钮",
  2806. "ok": true,
  2807. "tags": [],
  2808. "tests": [
  2809. {
  2810. "timeout": 120000,
  2811. "annotations": [],
  2812. "expectedStatus": "passed",
  2813. "projectId": "regression",
  2814. "projectName": "regression",
  2815. "results": [],
  2816. "status": "skipped"
  2817. }
  2818. ],
  2819. "id": "6c3eced42a9de441f456-ecc3f1339592f61f7e2c",
  2820. "file": "regression/23-frontend-e2e.spec.ts",
  2821. "line": 210,
  2822. "column": 7
  2823. },
  2824. {
  2825. "title": "E07: 交互式创建页 - 4步向导/表单输入/下一步/切换模式",
  2826. "ok": true,
  2827. "tags": [],
  2828. "tests": [
  2829. {
  2830. "timeout": 120000,
  2831. "annotations": [],
  2832. "expectedStatus": "passed",
  2833. "projectId": "regression",
  2834. "projectName": "regression",
  2835. "results": [],
  2836. "status": "skipped"
  2837. }
  2838. ],
  2839. "id": "6c3eced42a9de441f456-eaeb1934d5a7514c1f24",
  2840. "file": "regression/23-frontend-e2e.spec.ts",
  2841. "line": 233,
  2842. "column": 7
  2843. },
  2844. {
  2845. "title": "E08: 章节详情页 - 章节信息/音频视频按钮/返回",
  2846. "ok": true,
  2847. "tags": [],
  2848. "tests": [
  2849. {
  2850. "timeout": 120000,
  2851. "annotations": [],
  2852. "expectedStatus": "passed",
  2853. "projectId": "regression",
  2854. "projectName": "regression",
  2855. "results": [],
  2856. "status": "skipped"
  2857. }
  2858. ],
  2859. "id": "6c3eced42a9de441f456-0ea0fca790e890b7436c",
  2860. "file": "regression/23-frontend-e2e.spec.ts",
  2861. "line": 242,
  2862. "column": 7
  2863. },
  2864. {
  2865. "title": "E09: 会员订阅页 - 套餐卡片/支付方式/订阅按钮/点击套餐",
  2866. "ok": true,
  2867. "tags": [],
  2868. "tests": [
  2869. {
  2870. "timeout": 120000,
  2871. "annotations": [],
  2872. "expectedStatus": "passed",
  2873. "projectId": "regression",
  2874. "projectName": "regression",
  2875. "results": [],
  2876. "status": "skipped"
  2877. }
  2878. ],
  2879. "id": "6c3eced42a9de441f456-1fc4bf56542d6f3a9889",
  2880. "file": "regression/23-frontend-e2e.spec.ts",
  2881. "line": 262,
  2882. "column": 7
  2883. },
  2884. {
  2885. "title": "E10: 专辑列表页 - 列表展示/空状态/创建入口",
  2886. "ok": true,
  2887. "tags": [],
  2888. "tests": [
  2889. {
  2890. "timeout": 120000,
  2891. "annotations": [],
  2892. "expectedStatus": "passed",
  2893. "projectId": "regression",
  2894. "projectName": "regression",
  2895. "results": [],
  2896. "status": "skipped"
  2897. }
  2898. ],
  2899. "id": "6c3eced42a9de441f456-6512c21cd810400c5107",
  2900. "file": "regression/23-frontend-e2e.spec.ts",
  2901. "line": 289,
  2902. "column": 7
  2903. },
  2904. {
  2905. "title": "E11: 搜索页 - 搜索框输入/历史记录/热门推荐/点击搜索",
  2906. "ok": true,
  2907. "tags": [],
  2908. "tests": [
  2909. {
  2910. "timeout": 120000,
  2911. "annotations": [],
  2912. "expectedStatus": "passed",
  2913. "projectId": "regression",
  2914. "projectName": "regression",
  2915. "results": [],
  2916. "status": "skipped"
  2917. }
  2918. ],
  2919. "id": "6c3eced42a9de441f456-0ce9b35c9a22c20235bd",
  2920. "file": "regression/23-frontend-e2e.spec.ts",
  2921. "line": 309,
  2922. "column": 7
  2923. },
  2924. {
  2925. "title": "E12: 历史记录页 - 时间标签栏/视图切换/列表项点击",
  2926. "ok": true,
  2927. "tags": [],
  2928. "tests": [
  2929. {
  2930. "timeout": 120000,
  2931. "annotations": [],
  2932. "expectedStatus": "passed",
  2933. "projectId": "regression",
  2934. "projectName": "regression",
  2935. "results": [],
  2936. "status": "skipped"
  2937. }
  2938. ],
  2939. "id": "6c3eced42a9de441f456-d1a342e487b4afcd3fef",
  2940. "file": "regression/23-frontend-e2e.spec.ts",
  2941. "line": 338,
  2942. "column": 7
  2943. },
  2944. {
  2945. "title": "E13: 视频生成列表页 - 创建入口/项目列表/点击创建",
  2946. "ok": true,
  2947. "tags": [],
  2948. "tests": [
  2949. {
  2950. "timeout": 120000,
  2951. "annotations": [],
  2952. "expectedStatus": "passed",
  2953. "projectId": "regression",
  2954. "projectName": "regression",
  2955. "results": [],
  2956. "status": "skipped"
  2957. }
  2958. ],
  2959. "id": "6c3eced42a9de441f456-c55b8d6dbe26b417e799",
  2960. "file": "regression/23-frontend-e2e.spec.ts",
  2961. "line": 361,
  2962. "column": 7
  2963. },
  2964. {
  2965. "title": "E14: 收藏页 - 收藏列表/取消收藏/空状态",
  2966. "ok": true,
  2967. "tags": [],
  2968. "tests": [
  2969. {
  2970. "timeout": 120000,
  2971. "annotations": [],
  2972. "expectedStatus": "passed",
  2973. "projectId": "regression",
  2974. "projectName": "regression",
  2975. "results": [],
  2976. "status": "skipped"
  2977. }
  2978. ],
  2979. "id": "6c3eced42a9de441f456-3cde46ed3e55a900ec84",
  2980. "file": "regression/23-frontend-e2e.spec.ts",
  2981. "line": 377,
  2982. "column": 7
  2983. },
  2984. {
  2985. "title": "E15: 设置页 - 设置项/开关切换/弹窗选择/清理缓存",
  2986. "ok": true,
  2987. "tags": [],
  2988. "tests": [
  2989. {
  2990. "timeout": 120000,
  2991. "annotations": [],
  2992. "expectedStatus": "passed",
  2993. "projectId": "regression",
  2994. "projectName": "regression",
  2995. "results": [],
  2996. "status": "skipped"
  2997. }
  2998. ],
  2999. "id": "6c3eced42a9de441f456-279774ac6fc9d130789e",
  3000. "file": "regression/23-frontend-e2e.spec.ts",
  3001. "line": 386,
  3002. "column": 7
  3003. },
  3004. {
  3005. "title": "E16: 通知页面 - 通知列表/标记已读/清空",
  3006. "ok": true,
  3007. "tags": [],
  3008. "tests": [
  3009. {
  3010. "timeout": 120000,
  3011. "annotations": [],
  3012. "expectedStatus": "passed",
  3013. "projectId": "regression",
  3014. "projectName": "regression",
  3015. "results": [],
  3016. "status": "skipped"
  3017. }
  3018. ],
  3019. "id": "6c3eced42a9de441f456-43b5e9ef614a381f0334",
  3020. "file": "regression/23-frontend-e2e.spec.ts",
  3021. "line": 399,
  3022. "column": 7
  3023. },
  3024. {
  3025. "title": "E17: 播放列表页 - 列表展示/移除/排序",
  3026. "ok": true,
  3027. "tags": [],
  3028. "tests": [
  3029. {
  3030. "timeout": 120000,
  3031. "annotations": [],
  3032. "expectedStatus": "passed",
  3033. "projectId": "regression",
  3034. "projectName": "regression",
  3035. "results": [],
  3036. "status": "skipped"
  3037. }
  3038. ],
  3039. "id": "6c3eced42a9de441f456-b080e21dac605b44266a",
  3040. "file": "regression/23-frontend-e2e.spec.ts",
  3041. "line": 422,
  3042. "column": 7
  3043. },
  3044. {
  3045. "title": "E18: 订单页面 - 订单列表/订单状态/筛选",
  3046. "ok": true,
  3047. "tags": [],
  3048. "tests": [
  3049. {
  3050. "timeout": 120000,
  3051. "annotations": [],
  3052. "expectedStatus": "passed",
  3053. "projectId": "regression",
  3054. "projectName": "regression",
  3055. "results": [],
  3056. "status": "skipped"
  3057. }
  3058. ],
  3059. "id": "6c3eced42a9de441f456-f85d86480af68b39727b",
  3060. "file": "regression/23-frontend-e2e.spec.ts",
  3061. "line": 441,
  3062. "column": 7
  3063. },
  3064. {
  3065. "title": "E19: 发布页面 - 内容发布/上传/发布按钮",
  3066. "ok": true,
  3067. "tags": [],
  3068. "tests": [
  3069. {
  3070. "timeout": 120000,
  3071. "annotations": [],
  3072. "expectedStatus": "passed",
  3073. "projectId": "regression",
  3074. "projectName": "regression",
  3075. "results": [],
  3076. "status": "skipped"
  3077. }
  3078. ],
  3079. "id": "6c3eced42a9de441f456-12431a3b247fe64b1787",
  3080. "file": "regression/23-frontend-e2e.spec.ts",
  3081. "line": 468,
  3082. "column": 7
  3083. },
  3084. {
  3085. "title": "E20: AI生成页 - AI功能入口/参数设置/生成按钮",
  3086. "ok": true,
  3087. "tags": [],
  3088. "tests": [
  3089. {
  3090. "timeout": 120000,
  3091. "annotations": [],
  3092. "expectedStatus": "passed",
  3093. "projectId": "regression",
  3094. "projectName": "regression",
  3095. "results": [],
  3096. "status": "skipped"
  3097. }
  3098. ],
  3099. "id": "6c3eced42a9de441f456-0b89fa8e0daae3b7238d",
  3100. "file": "regression/23-frontend-e2e.spec.ts",
  3101. "line": 485,
  3102. "column": 7
  3103. },
  3104. {
  3105. "title": "E21: 视频生成创建页 - 表单填写/参数选择/创建",
  3106. "ok": true,
  3107. "tags": [],
  3108. "tests": [
  3109. {
  3110. "timeout": 120000,
  3111. "annotations": [],
  3112. "expectedStatus": "passed",
  3113. "projectId": "regression",
  3114. "projectName": "regression",
  3115. "results": [],
  3116. "status": "skipped"
  3117. }
  3118. ],
  3119. "id": "6c3eced42a9de441f456-6b63c33ef0850b90273d",
  3120. "file": "regression/23-frontend-e2e.spec.ts",
  3121. "line": 506,
  3122. "column": 7
  3123. },
  3124. {
  3125. "title": "E22: 草稿箱页面 - 草稿列表/编辑/删除",
  3126. "ok": true,
  3127. "tags": [],
  3128. "tests": [
  3129. {
  3130. "timeout": 120000,
  3131. "annotations": [],
  3132. "expectedStatus": "passed",
  3133. "projectId": "regression",
  3134. "projectName": "regression",
  3135. "results": [],
  3136. "status": "skipped"
  3137. }
  3138. ],
  3139. "id": "6c3eced42a9de441f456-b1861679fe32ba5633f2",
  3140. "file": "regression/23-frontend-e2e.spec.ts",
  3141. "line": 523,
  3142. "column": 7
  3143. },
  3144. {
  3145. "title": "E23: 专辑详情页 - 专辑信息/章节列表/操作按钮",
  3146. "ok": true,
  3147. "tags": [],
  3148. "tests": [
  3149. {
  3150. "timeout": 120000,
  3151. "annotations": [],
  3152. "expectedStatus": "passed",
  3153. "projectId": "regression",
  3154. "projectName": "regression",
  3155. "results": [],
  3156. "status": "skipped"
  3157. }
  3158. ],
  3159. "id": "6c3eced42a9de441f456-f2f287e9ec0b5eef3dc4",
  3160. "file": "regression/23-frontend-e2e.spec.ts",
  3161. "line": 538,
  3162. "column": 7
  3163. },
  3164. {
  3165. "title": "E24: 支付确认页 - 订单信息/支付方式/确认支付",
  3166. "ok": true,
  3167. "tags": [],
  3168. "tests": [
  3169. {
  3170. "timeout": 120000,
  3171. "annotations": [],
  3172. "expectedStatus": "passed",
  3173. "projectId": "regression",
  3174. "projectName": "regression",
  3175. "results": [],
  3176. "status": "skipped"
  3177. }
  3178. ],
  3179. "id": "6c3eced42a9de441f456-e675d85849828b7ee09b",
  3180. "file": "regression/23-frontend-e2e.spec.ts",
  3181. "line": 555,
  3182. "column": 7
  3183. },
  3184. {
  3185. "title": "E25: 播放列表详情页 - 列表项/播放/移除",
  3186. "ok": true,
  3187. "tags": [],
  3188. "tests": [
  3189. {
  3190. "timeout": 120000,
  3191. "annotations": [],
  3192. "expectedStatus": "passed",
  3193. "projectId": "regression",
  3194. "projectName": "regression",
  3195. "results": [],
  3196. "status": "skipped"
  3197. }
  3198. ],
  3199. "id": "6c3eced42a9de441f456-d3e7bede407937130a8d",
  3200. "file": "regression/23-frontend-e2e.spec.ts",
  3201. "line": 572,
  3202. "column": 7
  3203. },
  3204. {
  3205. "title": "E26: 支付结果页 - 结果展示/返回按钮",
  3206. "ok": true,
  3207. "tags": [],
  3208. "tests": [
  3209. {
  3210. "timeout": 120000,
  3211. "annotations": [],
  3212. "expectedStatus": "passed",
  3213. "projectId": "regression",
  3214. "projectName": "regression",
  3215. "results": [],
  3216. "status": "skipped"
  3217. }
  3218. ],
  3219. "id": "6c3eced42a9de441f456-ff309a1eab8f4d3ff88d",
  3220. "file": "regression/23-frontend-e2e.spec.ts",
  3221. "line": 593,
  3222. "column": 7
  3223. },
  3224. {
  3225. "title": "E27: 登录页 - 登录表单/登录按钮",
  3226. "ok": true,
  3227. "tags": [],
  3228. "tests": [
  3229. {
  3230. "timeout": 120000,
  3231. "annotations": [],
  3232. "expectedStatus": "passed",
  3233. "projectId": "regression",
  3234. "projectName": "regression",
  3235. "results": [],
  3236. "status": "skipped"
  3237. }
  3238. ],
  3239. "id": "6c3eced42a9de441f456-7526d11532d6e5e4e1e9",
  3240. "file": "regression/23-frontend-e2e.spec.ts",
  3241. "line": 608,
  3242. "column": 7
  3243. },
  3244. {
  3245. "title": "E28: 日志页面 - 日志列表/筛选",
  3246. "ok": true,
  3247. "tags": [],
  3248. "tests": [
  3249. {
  3250. "timeout": 120000,
  3251. "annotations": [],
  3252. "expectedStatus": "passed",
  3253. "projectId": "regression",
  3254. "projectName": "regression",
  3255. "results": [],
  3256. "status": "skipped"
  3257. }
  3258. ],
  3259. "id": "6c3eced42a9de441f456-e8d262750fea59dfa098",
  3260. "file": "regression/23-frontend-e2e.spec.ts",
  3261. "line": 625,
  3262. "column": 7
  3263. },
  3264. {
  3265. "title": "E29: Webview页面 - 网页加载",
  3266. "ok": true,
  3267. "tags": [],
  3268. "tests": [
  3269. {
  3270. "timeout": 120000,
  3271. "annotations": [],
  3272. "expectedStatus": "passed",
  3273. "projectId": "regression",
  3274. "projectName": "regression",
  3275. "results": [],
  3276. "status": "skipped"
  3277. }
  3278. ],
  3279. "id": "6c3eced42a9de441f456-8015bfa7b3e661daa1fe",
  3280. "file": "regression/23-frontend-e2e.spec.ts",
  3281. "line": 638,
  3282. "column": 7
  3283. },
  3284. {
  3285. "title": "E30: 支付宝二维码页 - 二维码展示/支付提示",
  3286. "ok": true,
  3287. "tags": [],
  3288. "tests": [
  3289. {
  3290. "timeout": 120000,
  3291. "annotations": [],
  3292. "expectedStatus": "passed",
  3293. "projectId": "regression",
  3294. "projectName": "regression",
  3295. "results": [],
  3296. "status": "skipped"
  3297. }
  3298. ],
  3299. "id": "6c3eced42a9de441f456-9592c74fa08ad3cfe118",
  3300. "file": "regression/23-frontend-e2e.spec.ts",
  3301. "line": 655,
  3302. "column": 7
  3303. },
  3304. {
  3305. "title": "E31: 所有页面无 JS 运行时错误",
  3306. "ok": true,
  3307. "tags": [],
  3308. "tests": [
  3309. {
  3310. "timeout": 120000,
  3311. "annotations": [],
  3312. "expectedStatus": "passed",
  3313. "projectId": "regression",
  3314. "projectName": "regression",
  3315. "results": [],
  3316. "status": "skipped"
  3317. }
  3318. ],
  3319. "id": "6c3eced42a9de441f456-e88337e88a88830b272a",
  3320. "file": "regression/23-frontend-e2e.spec.ts",
  3321. "line": 676,
  3322. "column": 7
  3323. },
  3324. {
  3325. "title": "E32: TabBar 四个 Tab 页面均可正常切换",
  3326. "ok": true,
  3327. "tags": [],
  3328. "tests": [
  3329. {
  3330. "timeout": 120000,
  3331. "annotations": [],
  3332. "expectedStatus": "passed",
  3333. "projectId": "regression",
  3334. "projectName": "regression",
  3335. "results": [],
  3336. "status": "skipped"
  3337. }
  3338. ],
  3339. "id": "6c3eced42a9de441f456-c56279c40d72aa832578",
  3340. "file": "regression/23-frontend-e2e.spec.ts",
  3341. "line": 710,
  3342. "column": 7
  3343. }
  3344. ]
  3345. }
  3346. ]
  3347. },
  3348. {
  3349. "title": "regression\\mine-all-menu.spec.ts",
  3350. "file": "regression/mine-all-menu.spec.ts",
  3351. "column": 0,
  3352. "line": 0,
  3353. "specs": [],
  3354. "suites": [
  3355. {
  3356. "title": "mine 页面所有 menu-item 跳转验证 (发现 BUG-14 类问题)",
  3357. "file": "regression/mine-all-menu.spec.ts",
  3358. "line": 10,
  3359. "column": 6,
  3360. "specs": [
  3361. {
  3362. "title": "mine 页面\"书籍生成\"菜单应跳转到含 book-generator 的 URL",
  3363. "ok": true,
  3364. "tags": [],
  3365. "tests": [
  3366. {
  3367. "timeout": 120000,
  3368. "annotations": [],
  3369. "expectedStatus": "passed",
  3370. "projectId": "regression",
  3371. "projectName": "regression",
  3372. "results": [],
  3373. "status": "skipped"
  3374. }
  3375. ],
  3376. "id": "baa4b2c49db4453753e9-8897cd792bec0f8342f3",
  3377. "file": "regression/mine-all-menu.spec.ts",
  3378. "line": 21,
  3379. "column": 9
  3380. },
  3381. {
  3382. "title": "mine 页面\"会员中心\"菜单应跳转到含 member 的 URL",
  3383. "ok": true,
  3384. "tags": [],
  3385. "tests": [
  3386. {
  3387. "timeout": 120000,
  3388. "annotations": [],
  3389. "expectedStatus": "passed",
  3390. "projectId": "regression",
  3391. "projectName": "regression",
  3392. "results": [],
  3393. "status": "skipped"
  3394. }
  3395. ],
  3396. "id": "baa4b2c49db4453753e9-38c0e24cbd06a746e8a4",
  3397. "file": "regression/mine-all-menu.spec.ts",
  3398. "line": 21,
  3399. "column": 9
  3400. },
  3401. {
  3402. "title": "mine 页面\"设置\"菜单应跳转到含 settings 的 URL",
  3403. "ok": true,
  3404. "tags": [],
  3405. "tests": [
  3406. {
  3407. "timeout": 120000,
  3408. "annotations": [],
  3409. "expectedStatus": "passed",
  3410. "projectId": "regression",
  3411. "projectName": "regression",
  3412. "results": [],
  3413. "status": "skipped"
  3414. }
  3415. ],
  3416. "id": "baa4b2c49db4453753e9-f2deaf90948ad0a2683f",
  3417. "file": "regression/mine-all-menu.spec.ts",
  3418. "line": 21,
  3419. "column": 9
  3420. },
  3421. {
  3422. "title": "mine 页面\"购买积分包\"菜单应跳转到含 token-packs 的 URL",
  3423. "ok": true,
  3424. "tags": [],
  3425. "tests": [
  3426. {
  3427. "timeout": 120000,
  3428. "annotations": [],
  3429. "expectedStatus": "passed",
  3430. "projectId": "regression",
  3431. "projectName": "regression",
  3432. "results": [],
  3433. "status": "skipped"
  3434. }
  3435. ],
  3436. "id": "baa4b2c49db4453753e9-74653bee65b288c902a1",
  3437. "file": "regression/mine-all-menu.spec.ts",
  3438. "line": 21,
  3439. "column": 9
  3440. },
  3441. {
  3442. "title": "mine 页面\"邀请好友\"菜单应跳转到含 invite 的 URL",
  3443. "ok": true,
  3444. "tags": [],
  3445. "tests": [
  3446. {
  3447. "timeout": 120000,
  3448. "annotations": [],
  3449. "expectedStatus": "passed",
  3450. "projectId": "regression",
  3451. "projectName": "regression",
  3452. "results": [],
  3453. "status": "skipped"
  3454. }
  3455. ],
  3456. "id": "baa4b2c49db4453753e9-b9e35eb8a2879d650f78",
  3457. "file": "regression/mine-all-menu.spec.ts",
  3458. "line": 21,
  3459. "column": 9
  3460. }
  3461. ]
  3462. }
  3463. ]
  3464. },
  3465. {
  3466. "title": "regression\\mine-book-gen-link.spec.ts",
  3467. "file": "regression/mine-book-gen-link.spec.ts",
  3468. "column": 0,
  3469. "line": 0,
  3470. "specs": [],
  3471. "suites": [
  3472. {
  3473. "title": "mine 页面\"书籍生成\"入口跳转 (BUG-13 复现)",
  3474. "file": "regression/mine-book-gen-link.spec.ts",
  3475. "line": 10,
  3476. "column": 6,
  3477. "specs": [
  3478. {
  3479. "title": "登录后点击 mine 页面\"书籍生成\"应跳转到 book-generator 页面",
  3480. "ok": true,
  3481. "tags": [],
  3482. "tests": [
  3483. {
  3484. "timeout": 120000,
  3485. "annotations": [],
  3486. "expectedStatus": "passed",
  3487. "projectId": "regression",
  3488. "projectName": "regression",
  3489. "results": [],
  3490. "status": "skipped"
  3491. }
  3492. ],
  3493. "id": "fb569c99e62963c21cce-ee269eb9373f3fee389e",
  3494. "file": "regression/mine-book-gen-link.spec.ts",
  3495. "line": 11,
  3496. "column": 7
  3497. }
  3498. ]
  3499. }
  3500. ]
  3501. },
  3502. {
  3503. "title": "e2e\\ui\\critical-journeys\\journey-01-register-login.spec.ts",
  3504. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3505. "column": 0,
  3506. "line": 0,
  3507. "specs": [],
  3508. "suites": [
  3509. {
  3510. "title": "关键旅程 01: 注册登录",
  3511. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3512. "line": 21,
  3513. "column": 6,
  3514. "specs": [
  3515. {
  3516. "title": "C01-1: 发送验证码",
  3517. "ok": true,
  3518. "tags": [],
  3519. "tests": [
  3520. {
  3521. "timeout": 120000,
  3522. "annotations": [],
  3523. "expectedStatus": "passed",
  3524. "projectId": "critical-journeys",
  3525. "projectName": "critical-journeys",
  3526. "results": [],
  3527. "status": "skipped"
  3528. }
  3529. ],
  3530. "id": "a0e5a308c10a95dd72a0-c5dd930b1f23d2a0e9f2",
  3531. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3532. "line": 35,
  3533. "column": 7
  3534. },
  3535. {
  3536. "title": "C01-2: 验证码登录/注册",
  3537. "ok": true,
  3538. "tags": [],
  3539. "tests": [
  3540. {
  3541. "timeout": 120000,
  3542. "annotations": [],
  3543. "expectedStatus": "passed",
  3544. "projectId": "critical-journeys",
  3545. "projectName": "critical-journeys",
  3546. "results": [],
  3547. "status": "skipped"
  3548. }
  3549. ],
  3550. "id": "a0e5a308c10a95dd72a0-c0d7bd711c2703fe3238",
  3551. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3552. "line": 41,
  3553. "column": 7
  3554. },
  3555. {
  3556. "title": "C01-3: 获取用户信息",
  3557. "ok": true,
  3558. "tags": [],
  3559. "tests": [
  3560. {
  3561. "timeout": 120000,
  3562. "annotations": [],
  3563. "expectedStatus": "passed",
  3564. "projectId": "critical-journeys",
  3565. "projectName": "critical-journeys",
  3566. "results": [],
  3567. "status": "skipped"
  3568. }
  3569. ],
  3570. "id": "a0e5a308c10a95dd72a0-1bd5b59760594271a629",
  3571. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3572. "line": 53,
  3573. "column": 7
  3574. },
  3575. {
  3576. "title": "C01-4: 新用户默认免费会员(memberLevel=0)",
  3577. "ok": true,
  3578. "tags": [],
  3579. "tests": [
  3580. {
  3581. "timeout": 120000,
  3582. "annotations": [],
  3583. "expectedStatus": "passed",
  3584. "projectId": "critical-journeys",
  3585. "projectName": "critical-journeys",
  3586. "results": [],
  3587. "status": "skipped"
  3588. }
  3589. ],
  3590. "id": "a0e5a308c10a95dd72a0-07954f06e1f4b6d53241",
  3591. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3592. "line": 59,
  3593. "column": 7
  3594. },
  3595. {
  3596. "title": "C01-5: 首页可正常访问",
  3597. "ok": true,
  3598. "tags": [],
  3599. "tests": [
  3600. {
  3601. "timeout": 120000,
  3602. "annotations": [],
  3603. "expectedStatus": "passed",
  3604. "projectId": "critical-journeys",
  3605. "projectName": "critical-journeys",
  3606. "results": [],
  3607. "status": "skipped"
  3608. }
  3609. ],
  3610. "id": "a0e5a308c10a95dd72a0-5f3795546da71ee82986",
  3611. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3612. "line": 64,
  3613. "column": 7
  3614. },
  3615. {
  3616. "title": "C01-6: 清理测试用户",
  3617. "ok": true,
  3618. "tags": [],
  3619. "tests": [
  3620. {
  3621. "timeout": 120000,
  3622. "annotations": [],
  3623. "expectedStatus": "passed",
  3624. "projectId": "critical-journeys",
  3625. "projectName": "critical-journeys",
  3626. "results": [],
  3627. "status": "skipped"
  3628. }
  3629. ],
  3630. "id": "a0e5a308c10a95dd72a0-87f13ff8d25b6a8df8f4",
  3631. "file": "e2e/ui/critical-journeys/journey-01-register-login.spec.ts",
  3632. "line": 70,
  3633. "column": 7
  3634. }
  3635. ]
  3636. }
  3637. ]
  3638. },
  3639. {
  3640. "title": "e2e\\ui\\critical-journeys\\journey-02-free-tts.spec.ts",
  3641. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3642. "column": 0,
  3643. "line": 0,
  3644. "specs": [],
  3645. "suites": [
  3646. {
  3647. "title": "关键旅程 02: TTS生成播放",
  3648. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3649. "line": 10,
  3650. "column": 6,
  3651. "specs": [
  3652. {
  3653. "title": "C02-1: 获取音色列表",
  3654. "ok": true,
  3655. "tags": [],
  3656. "tests": [
  3657. {
  3658. "timeout": 120000,
  3659. "annotations": [],
  3660. "expectedStatus": "passed",
  3661. "projectId": "critical-journeys",
  3662. "projectName": "critical-journeys",
  3663. "results": [],
  3664. "status": "skipped"
  3665. }
  3666. ],
  3667. "id": "6268f04883d4a64aef87-9225f87d33d5a7f28a62",
  3668. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3669. "line": 29,
  3670. "column": 7
  3671. },
  3672. {
  3673. "title": "C02-2: 获取提供商列表",
  3674. "ok": true,
  3675. "tags": [],
  3676. "tests": [
  3677. {
  3678. "timeout": 120000,
  3679. "annotations": [],
  3680. "expectedStatus": "passed",
  3681. "projectId": "critical-journeys",
  3682. "projectName": "critical-journeys",
  3683. "results": [],
  3684. "status": "skipped"
  3685. }
  3686. ],
  3687. "id": "6268f04883d4a64aef87-a9719b743779ae3cc83f",
  3688. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3689. "line": 37,
  3690. "column": 7
  3691. },
  3692. {
  3693. "title": "C02-3: 生成TTS音频任务",
  3694. "ok": true,
  3695. "tags": [],
  3696. "tests": [
  3697. {
  3698. "timeout": 120000,
  3699. "annotations": [],
  3700. "expectedStatus": "passed",
  3701. "projectId": "critical-journeys",
  3702. "projectName": "critical-journeys",
  3703. "results": [],
  3704. "status": "skipped"
  3705. }
  3706. ],
  3707. "id": "6268f04883d4a64aef87-ee75398b79d08f8948fd",
  3708. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3709. "line": 42,
  3710. "column": 7
  3711. },
  3712. {
  3713. "title": "C02-4: 查询音频生成状态",
  3714. "ok": true,
  3715. "tags": [],
  3716. "tests": [
  3717. {
  3718. "timeout": 120000,
  3719. "annotations": [],
  3720. "expectedStatus": "passed",
  3721. "projectId": "critical-journeys",
  3722. "projectName": "critical-journeys",
  3723. "results": [],
  3724. "status": "skipped"
  3725. }
  3726. ],
  3727. "id": "6268f04883d4a64aef87-987879e953044946a752",
  3728. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3729. "line": 53,
  3730. "column": 7
  3731. },
  3732. {
  3733. "title": "C02-5: TTS生成页可正常访问",
  3734. "ok": true,
  3735. "tags": [],
  3736. "tests": [
  3737. {
  3738. "timeout": 120000,
  3739. "annotations": [],
  3740. "expectedStatus": "passed",
  3741. "projectId": "critical-journeys",
  3742. "projectName": "critical-journeys",
  3743. "results": [],
  3744. "status": "skipped"
  3745. }
  3746. ],
  3747. "id": "6268f04883d4a64aef87-963d83c666d7e0be2118",
  3748. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3749. "line": 60,
  3750. "column": 7
  3751. },
  3752. {
  3753. "title": "C02-6: 播放器页可正常访问",
  3754. "ok": true,
  3755. "tags": [],
  3756. "tests": [
  3757. {
  3758. "timeout": 120000,
  3759. "annotations": [],
  3760. "expectedStatus": "passed",
  3761. "projectId": "critical-journeys",
  3762. "projectName": "critical-journeys",
  3763. "results": [],
  3764. "status": "skipped"
  3765. }
  3766. ],
  3767. "id": "6268f04883d4a64aef87-9268ff6704775721d99f",
  3768. "file": "e2e/ui/critical-journeys/journey-02-free-tts.spec.ts",
  3769. "line": 66,
  3770. "column": 7
  3771. }
  3772. ]
  3773. }
  3774. ]
  3775. },
  3776. {
  3777. "title": "e2e\\ui\\critical-journeys\\journey-03-book-generate.spec.ts",
  3778. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3779. "column": 0,
  3780. "line": 0,
  3781. "specs": [],
  3782. "suites": [
  3783. {
  3784. "title": "关键旅程 03: 书籍生成流水线",
  3785. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3786. "line": 10,
  3787. "column": 6,
  3788. "specs": [
  3789. {
  3790. "title": "C03-1: 预估字数和时长",
  3791. "ok": true,
  3792. "tags": [],
  3793. "tests": [
  3794. {
  3795. "timeout": 120000,
  3796. "annotations": [],
  3797. "expectedStatus": "passed",
  3798. "projectId": "critical-journeys",
  3799. "projectName": "critical-journeys",
  3800. "results": [],
  3801. "status": "skipped"
  3802. }
  3803. ],
  3804. "id": "ea7593c966dafaf4a399-f7000824ffa7d61465f7",
  3805. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3806. "line": 28,
  3807. "column": 7
  3808. },
  3809. {
  3810. "title": "C03-2: 检测书籍类型",
  3811. "ok": true,
  3812. "tags": [],
  3813. "tests": [
  3814. {
  3815. "timeout": 120000,
  3816. "annotations": [],
  3817. "expectedStatus": "passed",
  3818. "projectId": "critical-journeys",
  3819. "projectName": "critical-journeys",
  3820. "results": [],
  3821. "status": "skipped"
  3822. }
  3823. ],
  3824. "id": "ea7593c966dafaf4a399-320195663f9beeed1f24",
  3825. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3826. "line": 37,
  3827. "column": 7
  3828. },
  3829. {
  3830. "title": "C03-3: 创建书籍",
  3831. "ok": true,
  3832. "tags": [],
  3833. "tests": [
  3834. {
  3835. "timeout": 120000,
  3836. "annotations": [],
  3837. "expectedStatus": "passed",
  3838. "projectId": "critical-journeys",
  3839. "projectName": "critical-journeys",
  3840. "results": [],
  3841. "status": "skipped"
  3842. }
  3843. ],
  3844. "id": "ea7593c966dafaf4a399-ff564b6e58490ba8412c",
  3845. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3846. "line": 45,
  3847. "column": 7
  3848. },
  3849. {
  3850. "title": "C03-4: 获取书籍详情",
  3851. "ok": true,
  3852. "tags": [],
  3853. "tests": [
  3854. {
  3855. "timeout": 120000,
  3856. "annotations": [],
  3857. "expectedStatus": "passed",
  3858. "projectId": "critical-journeys",
  3859. "projectName": "critical-journeys",
  3860. "results": [],
  3861. "status": "skipped"
  3862. }
  3863. ],
  3864. "id": "ea7593c966dafaf4a399-5b036b9733da5e993ae2",
  3865. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3866. "line": 57,
  3867. "column": 7
  3868. },
  3869. {
  3870. "title": "C03-5: 获取章节列表",
  3871. "ok": true,
  3872. "tags": [],
  3873. "tests": [
  3874. {
  3875. "timeout": 120000,
  3876. "annotations": [],
  3877. "expectedStatus": "passed",
  3878. "projectId": "critical-journeys",
  3879. "projectName": "critical-journeys",
  3880. "results": [],
  3881. "status": "skipped"
  3882. }
  3883. ],
  3884. "id": "ea7593c966dafaf4a399-37340947f2bcb623a0e0",
  3885. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3886. "line": 64,
  3887. "column": 7
  3888. },
  3889. {
  3890. "title": "C03-6: 获取用户书籍列表",
  3891. "ok": true,
  3892. "tags": [],
  3893. "tests": [
  3894. {
  3895. "timeout": 120000,
  3896. "annotations": [],
  3897. "expectedStatus": "passed",
  3898. "projectId": "critical-journeys",
  3899. "projectName": "critical-journeys",
  3900. "results": [],
  3901. "status": "skipped"
  3902. }
  3903. ],
  3904. "id": "ea7593c966dafaf4a399-7fea4c386902310c415f",
  3905. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3906. "line": 70,
  3907. "column": 7
  3908. },
  3909. {
  3910. "title": "C03-7: 书籍生成列表页可访问",
  3911. "ok": true,
  3912. "tags": [],
  3913. "tests": [
  3914. {
  3915. "timeout": 120000,
  3916. "annotations": [],
  3917. "expectedStatus": "passed",
  3918. "projectId": "critical-journeys",
  3919. "projectName": "critical-journeys",
  3920. "results": [],
  3921. "status": "skipped"
  3922. }
  3923. ],
  3924. "id": "ea7593c966dafaf4a399-5672daa5f741e53d23fa",
  3925. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3926. "line": 76,
  3927. "column": 7
  3928. },
  3929. {
  3930. "title": "C03-8: 书籍创建页可访问",
  3931. "ok": true,
  3932. "tags": [],
  3933. "tests": [
  3934. {
  3935. "timeout": 120000,
  3936. "annotations": [],
  3937. "expectedStatus": "passed",
  3938. "projectId": "critical-journeys",
  3939. "projectName": "critical-journeys",
  3940. "results": [],
  3941. "status": "skipped"
  3942. }
  3943. ],
  3944. "id": "ea7593c966dafaf4a399-f80354d1d582f2c51bc5",
  3945. "file": "e2e/ui/critical-journeys/journey-03-book-generate.spec.ts",
  3946. "line": 82,
  3947. "column": 7
  3948. }
  3949. ]
  3950. }
  3951. ]
  3952. },
  3953. {
  3954. "title": "e2e\\ui\\critical-journeys\\journey-04-subscribe-play.spec.ts",
  3955. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  3956. "column": 0,
  3957. "line": 0,
  3958. "specs": [],
  3959. "suites": [
  3960. {
  3961. "title": "关键旅程 04: 订阅会员解锁功能",
  3962. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  3963. "line": 10,
  3964. "column": 6,
  3965. "specs": [
  3966. {
  3967. "title": "C04-1: 获取可用套餐列表",
  3968. "ok": true,
  3969. "tags": [],
  3970. "tests": [
  3971. {
  3972. "timeout": 120000,
  3973. "annotations": [],
  3974. "expectedStatus": "passed",
  3975. "projectId": "critical-journeys",
  3976. "projectName": "critical-journeys",
  3977. "results": [],
  3978. "status": "skipped"
  3979. }
  3980. ],
  3981. "id": "1da7154a5363e56f8abe-5bb68003edb5103a44e0",
  3982. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  3983. "line": 28,
  3984. "column": 7
  3985. },
  3986. {
  3987. "title": "C04-2: 获取单个套餐详情",
  3988. "ok": true,
  3989. "tags": [],
  3990. "tests": [
  3991. {
  3992. "timeout": 120000,
  3993. "annotations": [],
  3994. "expectedStatus": "passed",
  3995. "projectId": "critical-journeys",
  3996. "projectName": "critical-journeys",
  3997. "results": [],
  3998. "status": "skipped"
  3999. }
  4000. ],
  4001. "id": "1da7154a5363e56f8abe-92d2cf871800192b50d5",
  4002. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  4003. "line": 35,
  4004. "column": 7
  4005. },
  4006. {
  4007. "title": "C04-3: 创建支付订单",
  4008. "ok": true,
  4009. "tags": [],
  4010. "tests": [
  4011. {
  4012. "timeout": 120000,
  4013. "annotations": [],
  4014. "expectedStatus": "passed",
  4015. "projectId": "critical-journeys",
  4016. "projectName": "critical-journeys",
  4017. "results": [],
  4018. "status": "skipped"
  4019. }
  4020. ],
  4021. "id": "1da7154a5363e56f8abe-7736c1f2bbb5d9730178",
  4022. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  4023. "line": 41,
  4024. "column": 7
  4025. },
  4026. {
  4027. "title": "C04-4: 模拟支付成功回调",
  4028. "ok": true,
  4029. "tags": [],
  4030. "tests": [
  4031. {
  4032. "timeout": 120000,
  4033. "annotations": [],
  4034. "expectedStatus": "passed",
  4035. "projectId": "critical-journeys",
  4036. "projectName": "critical-journeys",
  4037. "results": [],
  4038. "status": "skipped"
  4039. }
  4040. ],
  4041. "id": "1da7154a5363e56f8abe-51a4b79b7afc6f199499",
  4042. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  4043. "line": 52,
  4044. "column": 7
  4045. },
  4046. {
  4047. "title": "C04-5: 会员等级已更新",
  4048. "ok": true,
  4049. "tags": [],
  4050. "tests": [
  4051. {
  4052. "timeout": 120000,
  4053. "annotations": [],
  4054. "expectedStatus": "passed",
  4055. "projectId": "critical-journeys",
  4056. "projectName": "critical-journeys",
  4057. "results": [],
  4058. "status": "skipped"
  4059. }
  4060. ],
  4061. "id": "1da7154a5363e56f8abe-6df659c2c164d9ed6d40",
  4062. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  4063. "line": 62,
  4064. "column": 7
  4065. },
  4066. {
  4067. "title": "C04-6: 会员中心页可访问",
  4068. "ok": true,
  4069. "tags": [],
  4070. "tests": [
  4071. {
  4072. "timeout": 120000,
  4073. "annotations": [],
  4074. "expectedStatus": "passed",
  4075. "projectId": "critical-journeys",
  4076. "projectName": "critical-journeys",
  4077. "results": [],
  4078. "status": "skipped"
  4079. }
  4080. ],
  4081. "id": "1da7154a5363e56f8abe-609e02a597cae418537b",
  4082. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  4083. "line": 69,
  4084. "column": 7
  4085. },
  4086. {
  4087. "title": "C04-7: 订单页可访问",
  4088. "ok": true,
  4089. "tags": [],
  4090. "tests": [
  4091. {
  4092. "timeout": 120000,
  4093. "annotations": [],
  4094. "expectedStatus": "passed",
  4095. "projectId": "critical-journeys",
  4096. "projectName": "critical-journeys",
  4097. "results": [],
  4098. "status": "skipped"
  4099. }
  4100. ],
  4101. "id": "1da7154a5363e56f8abe-a0ac12063473d2628b37",
  4102. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  4103. "line": 75,
  4104. "column": 7
  4105. },
  4106. {
  4107. "title": "C04-8: 查询订单列表",
  4108. "ok": true,
  4109. "tags": [],
  4110. "tests": [
  4111. {
  4112. "timeout": 120000,
  4113. "annotations": [],
  4114. "expectedStatus": "passed",
  4115. "projectId": "critical-journeys",
  4116. "projectName": "critical-journeys",
  4117. "results": [],
  4118. "status": "skipped"
  4119. }
  4120. ],
  4121. "id": "1da7154a5363e56f8abe-127593333abc1d766c08",
  4122. "file": "e2e/ui/critical-journeys/journey-04-subscribe-play.spec.ts",
  4123. "line": 81,
  4124. "column": 7
  4125. }
  4126. ]
  4127. }
  4128. ]
  4129. },
  4130. {
  4131. "title": "e2e\\ui\\critical-journeys\\journey-05-publish.spec.ts",
  4132. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4133. "column": 0,
  4134. "line": 0,
  4135. "specs": [],
  4136. "suites": [
  4137. {
  4138. "title": "关键旅程 05: 发布内容",
  4139. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4140. "line": 10,
  4141. "column": 6,
  4142. "specs": [
  4143. {
  4144. "title": "C05-1: 创建测试书籍用于发布",
  4145. "ok": true,
  4146. "tags": [],
  4147. "tests": [
  4148. {
  4149. "timeout": 120000,
  4150. "annotations": [],
  4151. "expectedStatus": "passed",
  4152. "projectId": "critical-journeys",
  4153. "projectName": "critical-journeys",
  4154. "results": [],
  4155. "status": "skipped"
  4156. }
  4157. ],
  4158. "id": "2a6f231d8c6f22530a3a-8e07651dbfca3985e062",
  4159. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4160. "line": 28,
  4161. "column": 7
  4162. },
  4163. {
  4164. "title": "C05-2: 获取发布状态",
  4165. "ok": true,
  4166. "tags": [],
  4167. "tests": [
  4168. {
  4169. "timeout": 120000,
  4170. "annotations": [],
  4171. "expectedStatus": "passed",
  4172. "projectId": "critical-journeys",
  4173. "projectName": "critical-journeys",
  4174. "results": [],
  4175. "status": "skipped"
  4176. }
  4177. ],
  4178. "id": "2a6f231d8c6f22530a3a-45e389afde747a37264f",
  4179. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4180. "line": 39,
  4181. "column": 7
  4182. },
  4183. {
  4184. "title": "C05-3: 发布书籍",
  4185. "ok": true,
  4186. "tags": [],
  4187. "tests": [
  4188. {
  4189. "timeout": 120000,
  4190. "annotations": [],
  4191. "expectedStatus": "passed",
  4192. "projectId": "critical-journeys",
  4193. "projectName": "critical-journeys",
  4194. "results": [],
  4195. "status": "skipped"
  4196. }
  4197. ],
  4198. "id": "2a6f231d8c6f22530a3a-589a7a460dab5646ac74",
  4199. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4200. "line": 46,
  4201. "column": 7
  4202. },
  4203. {
  4204. "title": "C05-4: 发布页可访问",
  4205. "ok": true,
  4206. "tags": [],
  4207. "tests": [
  4208. {
  4209. "timeout": 120000,
  4210. "annotations": [],
  4211. "expectedStatus": "passed",
  4212. "projectId": "critical-journeys",
  4213. "projectName": "critical-journeys",
  4214. "results": [],
  4215. "status": "skipped"
  4216. }
  4217. ],
  4218. "id": "2a6f231d8c6f22530a3a-2d2303344ab80c96c70a",
  4219. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4220. "line": 52,
  4221. "column": 7
  4222. },
  4223. {
  4224. "title": "C05-5: 首页可访问且显示内容",
  4225. "ok": true,
  4226. "tags": [],
  4227. "tests": [
  4228. {
  4229. "timeout": 120000,
  4230. "annotations": [],
  4231. "expectedStatus": "passed",
  4232. "projectId": "critical-journeys",
  4233. "projectName": "critical-journeys",
  4234. "results": [],
  4235. "status": "skipped"
  4236. }
  4237. ],
  4238. "id": "2a6f231d8c6f22530a3a-1a666039fbe61d3f6815",
  4239. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4240. "line": 58,
  4241. "column": 7
  4242. },
  4243. {
  4244. "title": "C05-6: 获取书籍列表验证已发布",
  4245. "ok": true,
  4246. "tags": [],
  4247. "tests": [
  4248. {
  4249. "timeout": 120000,
  4250. "annotations": [],
  4251. "expectedStatus": "passed",
  4252. "projectId": "critical-journeys",
  4253. "projectName": "critical-journeys",
  4254. "results": [],
  4255. "status": "skipped"
  4256. }
  4257. ],
  4258. "id": "2a6f231d8c6f22530a3a-3bb34f81126109dd3d27",
  4259. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4260. "line": 64,
  4261. "column": 7
  4262. },
  4263. {
  4264. "title": "C05-7: 播放列表页可访问",
  4265. "ok": true,
  4266. "tags": [],
  4267. "tests": [
  4268. {
  4269. "timeout": 120000,
  4270. "annotations": [],
  4271. "expectedStatus": "passed",
  4272. "projectId": "critical-journeys",
  4273. "projectName": "critical-journeys",
  4274. "results": [],
  4275. "status": "skipped"
  4276. }
  4277. ],
  4278. "id": "2a6f231d8c6f22530a3a-301d8860d606548b2e69",
  4279. "file": "e2e/ui/critical-journeys/journey-05-publish.spec.ts",
  4280. "line": 73,
  4281. "column": 7
  4282. }
  4283. ]
  4284. }
  4285. ]
  4286. },
  4287. {
  4288. "title": "example-rotation.spec.ts",
  4289. "file": "example-rotation.spec.ts",
  4290. "column": 0,
  4291. "line": 0,
  4292. "specs": [],
  4293. "suites": [
  4294. {
  4295. "title": "示例提示词轮播",
  4296. "file": "example-rotation.spec.ts",
  4297. "line": 9,
  4298. "column": 6,
  4299. "specs": [
  4300. {
  4301. "title": "每隔几秒自动切换",
  4302. "ok": true,
  4303. "tags": [],
  4304. "tests": [
  4305. {
  4306. "timeout": 120000,
  4307. "annotations": [],
  4308. "expectedStatus": "passed",
  4309. "projectId": "root-singles",
  4310. "projectName": "root-singles",
  4311. "results": [],
  4312. "status": "skipped"
  4313. }
  4314. ],
  4315. "id": "0ed737720fa1b1f88d4f-daf27e3f8f0aeb50bab6",
  4316. "file": "example-rotation.spec.ts",
  4317. "line": 10,
  4318. "column": 7
  4319. },
  4320. {
  4321. "title": "点击示例填充到文本框",
  4322. "ok": true,
  4323. "tags": [],
  4324. "tests": [
  4325. {
  4326. "timeout": 120000,
  4327. "annotations": [],
  4328. "expectedStatus": "passed",
  4329. "projectId": "root-singles",
  4330. "projectName": "root-singles",
  4331. "results": [],
  4332. "status": "skipped"
  4333. }
  4334. ],
  4335. "id": "0ed737720fa1b1f88d4f-18dbadb5b55bd64d1d08",
  4336. "file": "example-rotation.spec.ts",
  4337. "line": 31,
  4338. "column": 7
  4339. },
  4340. {
  4341. "title": "页面只展示一个示例 chip(不重复铺开)",
  4342. "ok": true,
  4343. "tags": [],
  4344. "tests": [
  4345. {
  4346. "timeout": 120000,
  4347. "annotations": [],
  4348. "expectedStatus": "passed",
  4349. "projectId": "root-singles",
  4350. "projectName": "root-singles",
  4351. "results": [],
  4352. "status": "skipped"
  4353. }
  4354. ],
  4355. "id": "0ed737720fa1b1f88d4f-1c2da1ed7e3a7a847490",
  4356. "file": "example-rotation.spec.ts",
  4357. "line": 43,
  4358. "column": 7
  4359. }
  4360. ]
  4361. }
  4362. ]
  4363. },
  4364. {
  4365. "title": "page-cleanup-screenshot.spec.ts",
  4366. "file": "page-cleanup-screenshot.spec.ts",
  4367. "column": 0,
  4368. "line": 0,
  4369. "specs": [
  4370. {
  4371. "title": "精简后页面截图",
  4372. "ok": true,
  4373. "tags": [],
  4374. "tests": [
  4375. {
  4376. "timeout": 120000,
  4377. "annotations": [],
  4378. "expectedStatus": "passed",
  4379. "projectId": "root-singles",
  4380. "projectName": "root-singles",
  4381. "results": [],
  4382. "status": "skipped"
  4383. }
  4384. ],
  4385. "id": "6f24b42ae0618cc5932c-4653dbe5401ed1d3bcaa",
  4386. "file": "page-cleanup-screenshot.spec.ts",
  4387. "line": 6,
  4388. "column": 5
  4389. }
  4390. ]
  4391. },
  4392. {
  4393. "title": "textarea-size.spec.ts",
  4394. "file": "textarea-size.spec.ts",
  4395. "column": 0,
  4396. "line": 0,
  4397. "specs": [
  4398. {
  4399. "title": "textarea 高度足够大",
  4400. "ok": true,
  4401. "tags": [],
  4402. "tests": [
  4403. {
  4404. "timeout": 120000,
  4405. "annotations": [],
  4406. "expectedStatus": "passed",
  4407. "projectId": "root-singles",
  4408. "projectName": "root-singles",
  4409. "results": [],
  4410. "status": "skipped"
  4411. }
  4412. ],
  4413. "id": "4473034b41139b5cfb81-f4d0180afd3abe80be42",
  4414. "file": "textarea-size.spec.ts",
  4415. "line": 6,
  4416. "column": 5
  4417. }
  4418. ]
  4419. }
  4420. ],
  4421. "errors": [],
  4422. "stats": {
  4423. "startTime": "2026-06-27T16:06:36.511Z",
  4424. "duration": 542.952,
  4425. "expected": 0,
  4426. "skipped": 189,
  4427. "unexpected": 0,
  4428. "flaky": 0
  4429. }
  4430. }