Files
cdtestplant_v1/apps/createDocument/controllers/__pycache__/hsm.cpython-313.pyc

136 lines
35 KiB
Plaintext
Raw Normal View History

2025-04-29 18:09:00 +08:00
<EFBFBD>
2026-01-28 16:50:40 +08:00
^Moi<6F><00><00>d<00>%SSKJr SSKJr SSKJr SSKJrJrJ r SSK
J r SSK J r SSKJrJr SSKJr SS KJr SS
KJrJrJr SS KJr SS KJrJrJrJrJ r SS K!J"r" SSK#J$r$ SSK%J&r& SSK'J(r( SSK)J*r* SSK+J,r, SSK-J.r. SSK/J0r0 SSK1J2r2 /SQr3\4\5S'\"SS/S9"SS\55r6g)<1E>)<01>Path)<01>deepcopy)<01>Union)<03>api_controller<65>ControllerBase<73>route)<01> transaction)<01>get_object_or_404)<02>QuerySet<65>Q)<01> DocxTemplate)<01>Document)<03>Project<63>Round<6E>Dut)<01>Dict)<05> get_list_dict<63> get_str_dict<63> get_ident<6E>get_case_ident<6E> get_testType)<01>create_csx_chapter_dict)<01> ChenResponse)<01>util)<01> project_path)<01>delete_dir_files)<01>
RichParser)<01>DocTime)<01>GenerateLogger)<01>demand_sort_by_designKey)
2025-04-29 18:09:00 +08:00
u一u二u三u四u五u六u七u八u九u<>chinese_round_namez /generateHSMu生成回归说明系列文档)<01>tagsc<00><><00>\rSrSr\"S5r\R"SSS9S\4Sj5r \R"SS S9\
RS\4S
j55r \R"S S S9\
RS\4S j55r \R"SSS9\
RS\4Sj55r\R"SSS9\
RS\4Sj55r\R"SSS9\
RS\4Sj55r\R"SSS9\
RS\4Sj55r\R"SSS9\
RS\4Sj55r\R"SSS9\
2026-01-28 16:50:40 +08:00
RS\4Sj55rS rg!)"<22>GenerateControllerHSM<53><00>回归测试说明z/create/deleteHSMDocumentzdelete-hsm-document)<01>url_name<6D>idc<00><><00>[U5n[R"5S- U- S- n[U5 g![a [ SSSS9s$f=f)N<>media<69>output_dir/hsm<73><6D>u6另一个程序正在占用文件请关闭后重试<E9878D><03>code<64>status<75>message)rr<00>cwdr<00>PermissionErrorr)<04>selfr(<00>project_path_str<74> save_paths <20>HE:\pycharmProjects\cdtestplant_v1\apps\createDocument\controllers\hsm.py<70>delete_hsm_document<6E>)GenerateControllerHSM.delete_hsm_document#sX<00><00>'<27><02>+<2B><18><18>H<EFBFBD>H<EFBFBD>J<EFBFBD><17>(<28>+;<3B>;<3B>>N<>N<> <09> x<01> <1C>Y<EFBFBD> '<27><><1E> x<01><1F>S<EFBFBD><13>>v<>w<> w<> x<01>s<00> 7<00>A<03>Az/create/basicInformationzcreate-basicInformationc <00><><00>[U5n[R"5S- U- S- S- n[U5n[ [
2025-04-29 18:09:00 +08:00
US9nUR RSS9R5nURRSS9R5n[S UR5nUV s/sHo<>S
PM n
n UR RSS9n [U 5S :a8S URlURR!S S5 [#SSSS9$UR$SR'U
2026-01-28 16:50:40 +08:00
5UR)5[+UR,S5[+UR.S5[+UR0S5UR2R5S5UR6S.n UR8UR:UR<S./n U H<>n[?U 5n[@[CURD5nURRSS9R5nU(d[#SSSUS3S9s $U RGUR8UR:UR<S.5 X<>S'[R"5S- U- S- SUS3- nURIUSS 9 URKU5 M<> [#S"S"S#S9$s sn f![La [#SSS!S9ss $f=f)$u3生成回归测试说明的被测软件基本信息r*<00>form_template/hsmu被测软件基本信息.docx<63>r(<00>0<><01>key<65>SO<53><01>type<70>language<67> ident_version<6F>r&u当前文档全部片段u该项目没有创建轮次r,u-您未创建轮次请创建完毕后再试r-u<>security_level<65>runtime<6D>devplantz%Y-%m-%d)<08> project_namerB<00> soft_typerErFrG<00> recv_date<74>dev_unit)<03>version<6F>
line_count<EFBFBD>effective_count<6E>您第<E682A8>-轮次中缺少源代码被测件请添加<E6B7BB> version_infor+<00>第u 轮被测软件基本信息.docxT<78><02>context<78>
autoescape<EFBFBD>0您打开了生成的文档请关闭后重试<E9878D><E8AF95>u0多轮回归说明文档基本信息生成完毕)'rrr1r r
r<00>pField<6C>filter<65>first<73>rdFieldrrB<00>exclude<64>len<65>logger<65>model<65>write_warning_logr<00>name<6D>join<69>get_soft_type_displayrrErFrG<00> beginTime<6D>strftimerKrL<00> total_lines<65>effective_linesrr!<00>intr><00>append<6E>render<65>saver2)r3r(r4<00>tpl_path<74>doc<6F> project_obj<62>
round1_obj<EFBFBD> round1_so_dut<75> languages<65>item<65> language_list<73> hround_listrTrQ<00>hround<6E> context_round<6E>cname<6D>so_dutr5s r6<00>create_basicInformation<6F>-GenerateControllerHSM.create_basicInformation,s<><00><00>(<28><02>+<2B><18><17>8<EFBFBD>8<EFBFBD>:<3A><07>'<27>*:<3A>:<3A>=P<>P<>Sr<53>r<><08><1A>8<EFBFBD>$<24><03>0<><17>R<EFBFBD>@<40> <0B>)4<>);<3B>);<3B>)B<>)B<>s<EFBFBD>)B<>)K<>)Q<>)Q<>)S<>
2025-04-29 18:09:00 +08:00
<EFBFBD>*4<>*<<3C>*<<3C>*C<>*C<><14>*C<>*N<>*T<>*T<>*V<> <0A>!<21>*<2A>k<EFBFBD>.B<>.B<>C<> <09>;D<>E<>9<EFBFBD>4<EFBFBD>o<EFBFBD>.<2E>9<EFBFBD> <0A>E<> +<2B> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B> <0E>{<7B> <1B>a<EFBFBD> <1F> 4<>D<EFBFBD>K<EFBFBD>K<EFBFBD> <1D> <10>K<EFBFBD>K<EFBFBD> )<29> )<29>*D<>Hc<48> e<><1F>S<EFBFBD><13>>m<>n<> n<>(<28>,<2C>,<2C><1D>
<EFBFBD>
<EFBFBD>=<3D>1<>$<24>:<3A>:<3A><<3C>*<2A>;<3B>+E<>+E<>GW<47>X<>#<23>K<EFBFBD>$7<>$7<><19>C<>$<24>[<5B>%9<>%9<>:<3A>F<>$<24>.<2E>.<2E>7<>7<>
<EFBFBD>C<>#<23>,<2C>,<2C> 
<EFBFBD><07>%<25>,<2C>,<2C>'<27>3<>3<>,<2C><<3C><<3C>
<EFBFBD> <0B> <0C> "<22>F<EFBFBD>$<24>W<EFBFBD>-<2D>M<EFBFBD>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD> <20>.<2E>.<2E>/<2F>/<2F>T<EFBFBD>/<2F>:<3A>@<40>@<40>B<>F<EFBFBD><19>#<23><13>S<EFBFBD>F<EFBFBD>5<EFBFBD>'<27>Q~<7E>B<42>A<02>A<02> <18> <1F> <1F>%<25>~<7E>~<7E>"(<28>"4<>"4<>'-<2D>'=<3D>'=<3D><12> <0E>-9<>.<2E> )<29><1C><08><08>
<EFBFBD>W<EFBFBD>,<2C>/?<3F>?<3F>BR<42>R<>WZ<57>[`<60>Za<5A>bB<02>VC<02>C<02>I<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>}<7D><14>J<EFBFBD> ><3E> v<01><13><08><08><19>#<23>+"<22>0<1C><13>S<EFBFBD>:l<>m<>m<><6D>eF<01><>`#<23> v<01>#<23><13>S<EFBFBD>Bt<42>u<>u<> v<01>s<00>.K <04>,K<02>K+<05>*K+z/create/docsummaryzcreate-docsummaryc<00><><00>[U5n[R"5S- U- S- S- n[U5n[ [
US9nUR RSS9n[U5S:agS UR0nUGHn[[UR5n URRS
2025-04-29 18:09:00 +08:00
S 9R5n
U
(d[!S S S U S3S9s $["R$R['[UR5S-
5US
S9R5n [)U5n U
2026-01-28 16:50:40 +08:00
R*U S'U R*U S'X<>S'[R"5S- U- S- SU S3- n UR-U SS9 UR/U 5 GM" [!SSSS9$![0a [!S S SS9ss $f=f)u'生成回归测试说明的文档概述r*r:u文档概述.docxr;r<r=rDNrnr?r@r,rOrPr-)<03>
round__key<EFBFBD>projectrA<00>current_version<6F> last_version<6F> round_chineser+rRu轮文档概述.docxTrSrVrW<00>$多轮回归文档概述生成完毕)rrr1r r
rrXr\r]rar!rhr>r[rYrZrr<00>objects<74>strrrLrjrkr2)r3r(r4rlrmrnrtrTrurwrx<00> so_dut_last<73> round_contextr5s r6<00>create_docsummary<72>'GenerateControllerHSM.create_docsummaryms<><00><00>(<28><02>+<2B><18><17>8<EFBFBD>8<EFBFBD>:<3A><07>'<27>*:<3A>:<3A>=P<>P<>Sf<53>f<><08><1A>8<EFBFBD>$<24><03>'<27><07>B<EFBFBD>7<> <0B> +<2B> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B> <0E>{<7B> <1B>a<EFBFBD> <1F><17> <1A>;<3B>+<2B>+<2B>
2025-04-29 18:09:00 +08:00
<EFBFBD><07>"<22>F<EFBFBD>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD> <20>.<2E>.<2E>/<2F>/<2F>T<EFBFBD>/<2F>:<3A>@<40>@<40>B<>F<EFBFBD><19>#<23><13>S<EFBFBD>F<EFBFBD>5<EFBFBD>'<27>Q~<7E>B<42>A<02>A<02>"<22>{<7B>{<7B>1<>1<>S<EFBFBD><13>V<EFBFBD>Z<EFBFBD>Z<EFBFBD><1F>ST<53>AT<41>=U<>_j<5F>7;<3B> 2<> =<3D>=B<>U<EFBFBD>W<EFBFBD> <18>$<24>W<EFBFBD>-<2D>M<EFBFBD>/5<>~<7E>~<7E>M<EFBFBD>+<2B> ,<2C>,7<>,?<3F>,?<3F>M<EFBFBD>.<2E> )<29>-2<>/<2F> *<2A><1C><08><08>
<EFBFBD>W<EFBFBD>,<2C>/?<3F>?<3F>BR<42>R<>WZ<57>[`<60>Za<5A>au<61>Uv<55>v<>I<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>}<7D><14>J<EFBFBD> ><3E> v<01><13><08><08><19>#<23>!"<22>&<1C><13>S<EFBFBD>:`<60>a<>a<><61>#<23> v<01>#<23><13>S<EFBFBD>Bt<42>u<>u<> v<01>s<00> F.<02>.G<05>Gz/create/jstechz create-jstechc<00><><00>[U5n[R"5S- U- S- S- n[U5n[ [
2025-04-29 18:09:00 +08:00
US9nUR R[SS9[SS9-[SS9-5n/nUHSnURURS -UR-URURS
.n URU 5 MU URS 3n
URS :XaURS 3n
[!U5n U
SUR"S3U R$UR&S
.n URU 5 URS3SUR"S3U R(UR&S
.n URS3SUR"S3U R*UR&S
.nUR-X<>/5 UR.R1SS9n[3U5S:agUGH,n[5U5n[6[9UR:5nURSUS3SUR"S[9UR:5S-S3UR<UR&S
2025-04-29 18:09:00 +08:00
.nURSUS3SUR"S[9UR:5S-3UR>UR&S
2026-01-28 16:50:40 +08:00
.nUR-UU/5 SU0n[R"5S- U- S- SUS 3- nURAUS!S"9 URCU5 GM/ [GS&S&S'S%9$![Da [GS#S#S$S%9ss $f=f)(u-生成回归测试说明的技术依据文件r*r:u技术依据文件.docxr;<00>XQr@<00>SJ<53>XY<58>-)<04>doc_namerC<00> publish_date<74>sourceu软件测评大纲<E5A4A7>9u软件鉴定测评大纲zPT-z-TO-1.00u软件测试说明z-TD-1.00u软件测试记录z-TNr<r=rDNu 软件第u轮测试说明z-TDz-1.00u轮测试记录<E8AEB0> std_documentsr+rRu轮技术依据文件.docxTrSr,rVr-rWu*多轮回归技术依据文件生成完毕)$rrr1r r
r<00>pdFieldrYr ra<00>refrL<00> release_date<74> release_unionri<00> report_typer<00>ident<6E> dg_cover_time<6D> test_unit<69> sm_cover_time<6D> jl_cover_time<6D>extendrXr\r]rr!rhr>rd<00>endTimerjrkr2r)r3r(r4rlrmrn<00> duties_qsr<73><00>duty<74>one_dutyr<79><00>timer<65>dg_duty<74>sm_duty<74>jl_dutyrtru<00>std_documents_roundrw<00>hsm_duty<74>hjl_dutyrTr5s r6<00> create_jstech<63>#GenerateControllerHSM.create_jstech<63>s<><00><00>(<28><02>+<2B><18><17>8<EFBFBD>8<EFBFBD>:<3A><07>'<27>*:<3A>:<3A>=P<>P<>Sl<53>l<><08><1A>8<EFBFBD>$<24><03>'<27><07>B<EFBFBD>7<> <0B><1F>'<27>'<27>.<2E>.<2E>q<EFBFBD>d<EFBFBD>|<7C>a<EFBFBD>T<EFBFBD>l<EFBFBD>/J<>Q<EFBFBD>TX<54>\<5C>/Y<>Z<> <09><1A> <0A><1D>D<EFBFBD>$(<28>I<EFBFBD>I<EFBFBD><04><08><08>3<EFBFBD><0E>QU<51>Q]<5D>Q]<5D>@]<5D>(,<2C>(9<>(9<>T<EFBFBD>EW<45>EW<45>Y<01>H<EFBFBD> <19> <20> <20><18> *<2A><1E>"<22>&<26>&<26>'<27>'9<>:<3A><08> <16> "<22> "<22>c<EFBFBD> )<29>%<25>*<2A>*<2A>+<2B>+C<>D<>H<EFBFBD><17><02> <0B><05>'<27>C<EFBFBD> <0B>@Q<>@Q<>?R<>RZ<52>:[<5B>#(<28>#6<>#6<>+<2B>BW<42>BW<42>Y<01><07><15><1C><1C>W<EFBFBD>%<25>"-<2D>"2<>"2<>!3<>3E<33>F<>&)<29>+<2B>*;<3B>*;<3B>)<<3C>H<EFBFBD>$E<>#(<28>#6<>#6<>+<2B>BW<42>BW<42>Y<01><07>#.<2E>"2<>"2<>!3<>3E<33>F<>&)<29>+<2B>*;<3B>*;<3B>)<<3C>C<EFBFBD>$@<40>#(<28>#6<>#6<>+<2B>BW<42>BW<42>Y<01><07> <16><1C><1C>g<EFBFBD>/<2F>0<>!,<2C> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B> <0E>{<7B> <1B>a<EFBFBD> <1F><17>!<21>F<EFBFBD>"*<2A>=<3D>"9<> <1F>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD>'2<>'7<>'7<>&8<> <09>%<25><17><0F>$X<>+.<2E>{<7B>/@<40>/@<40>.A<><13>S<EFBFBD><16><1A><1A>_<EFBFBD>WX<57>EX<45>DY<44>Y^<5E>)_<>(.<2E>(8<>(8<>K<EFBFBD>DY<44>DY<44>[<01>H<EFBFBD>(3<>'7<>'7<>&8<> <09>%<25><17><0F>$X<>+.<2E>{<7B>/@<40>/@<40>.A<><13>S<EFBFBD><16><1A><1A>_<EFBFBD>WX<57>EX<45>DY<44>)Z<>(.<2E><0E><0E>+<2B>BW<42>BW<42>Y<01>H<EFBFBD> <1A> <20> <20>(<28>H<EFBFBD>!5<> 6<><1F>!4<><0E>G<EFBFBD><1D><08><08>
<EFBFBD>W<EFBFBD>,<2C>/?<3F>?<3F>BR<42>R<>WZ<57>[`<60>Za<5A>a{<7B>U|<7C>|<7C>I<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>w<EFBFBD>4<EFBFBD>J<EFBFBD> 8<> v<01><13><08><08><19>#<23>#"<22>(<1C><13>S<EFBFBD>:f<>g<>g<><67>#<23> v<01>#<23><13>S<EFBFBD>Bt<42>u<>u<> v<01>s<00>L/<02>/M <05>M z/create/changePartzcreate-changePartc
<00><><00>[U5n[R"5S- U- S- S- n[U5n[ [
US9nSUR 0nURRSS9n[U5S:ag UGH)n[U5n [[UR5n
2025-04-29 18:09:00 +08:00
URRS
S 9R!5n U (d[#S S S U
S3S9s $URRSS 9R!5n [%[UR5S-
5n URRU S9R!5nURRS
S 9R!5nU(d+[#S S S [[UR5S3S9s $UR&nU R&nSnU (a~URRSS 9R!5nU(d+[#S S S [[UR5S3S9s $UR&nU R&nSUSUS3U S'OSU S'SUSUS3U S'[R"5S- U- S- SU
S3- nUR)U SS9 UR+U5 GM, [#S S S!S9$![,a [#S S SS9ss $f=f)"ur
2025-04-29 18:09:00 +08:00
生成回归测试说明的软件更改部分
暂时没想到如何处理和报告里面软件更改部分关系
2026-01-28 16:50:40 +08:00
r*r:u软件更改部分.docxr;rHr<r=rDNr?r@r,rOrPr-r<>u0轮次中缺少源代码版本信息请添加<E6B7BB>u!轮次中缺少需求文档信息u!以及软件需求规格说明u 版本和u版本<E78988>xq_stru被测软件代码<E4BBA3>so_strr+rRu轮软件更改部分.docxT<78>rUrVrWr<>)rrr1r r
rrarXr\r]rr!rhr>r[rYrZrr<>rLrjrkr2)r3r(r4rlrmrnrTrtrurvrwrx<00>xq_dut<75>last_round_key<65>
last_round<EFBFBD>last_round_so_dut<75>last_dm_version<6F>now_dm_version<6F>last_xq_version<6F> last_xq_dut<75>now_xq_versionr5s r6<00>create_changePart<72>'GenerateControllerHSM.create_changePart<72>s<><00><00>(<28><02>+<2B><18><17>8<EFBFBD>8<EFBFBD>:<3A><07>'<27>*:<3A>:<3A>=P<>P<>Sl<53>l<><08><1A>8<EFBFBD>$<24><03>'<27><07>B<EFBFBD>7<> <0B> <1A>K<EFBFBD>,<2C>,<2C>
2025-04-29 18:09:00 +08:00
<EFBFBD><07>!,<2C> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B> <0E>{<7B> <1B>a<EFBFBD> <1F><17>!<21>F<EFBFBD>$<24>W<EFBFBD>-<2D>M<EFBFBD>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD> <20>.<2E>.<2E>/<2F>/<2F>T<EFBFBD>/<2F>:<3A>@<40>@<40>B<>F<EFBFBD><19>#<23><13>S<EFBFBD>F<EFBFBD>5<EFBFBD>'<27>Q~<7E>B<42>A<02>A<02> <20>.<2E>.<2E>/<2F>/<2F>T<EFBFBD>/<2F>:<3A>@<40>@<40>B<>F<EFBFBD> <20><13>V<EFBFBD>Z<EFBFBD>Z<EFBFBD><1F>1<EFBFBD>!4<>5<>N<EFBFBD> +<2B> 2<> 2<> 9<> 9<>n<EFBFBD> 9<> M<> S<> S<> U<>J<EFBFBD> *<2A> 2<> 2<> 9<> 9<>t<EFBFBD> 9<> D<> J<> J<> L<> <1D>$<24>#<23><13>S<EFBFBD>.4<EFBFBD>5G<EFBFBD><03>F<EFBFBD>J<EFBFBD>J<EFBFBD><0F>5X<35>4Y<34>ZJ<02>-K<02>L<02>L<02>/<2F>7<>7<>O<EFBFBD>#<23>^<5E>^<5E>N<EFBFBD> <20>O<EFBFBD><15>(<28>0<>0<>7<>7<>T<EFBFBD>7<>B<>H<>H<>J<> <0B>"<22>'<27>S<EFBFBD><13>28<32>9K<39>C<EFBFBD>PV<50>PZ<50>PZ<50>O<EFBFBD>9\<5C>8]<5D>]~<7E>0<30>A<02>A<02>"-<2D>"5<>"5<><0F>!'<27><1E><1E><0E>,M<>n<EFBFBD>M]<5D>]f<>gv<67>fw<66>w}<7D>*~<7E> <0A>h<EFBFBD>'<27>+-<2D> <0A>h<EFBFBD>'<27>(:<3A>><3E>:J<>)<29>Tc<54>Sd<53>dj<64>&k<>M<EFBFBD>(<28> #<23><1C><08><08>
2026-01-28 16:50:40 +08:00
<EFBFBD>W<EFBFBD>,<2C>/?<3F>?<3F>BR<42>R<>WZ<57>[`<60>Za<5A>a{<7B>U|<7C>|<7C>I<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>}<7D><14>J<EFBFBD> 6<> v<01><13><08><08><19>#<23>G"<22>L<1C><13>S<EFBFBD>:`<60>a<>a<><61>#<23> v<01>#<23><13>S<EFBFBD>Bt<42>u<>u<> v<01>s<00>J8<02>8K<05>Kz/create/hdemandzcreate-hdemandc<00>Z
2025-04-29 18:09:00 +08:00
<00>[U5n[R"5S- U- S- S- n[U5n[ [
2026-01-28 16:50:40 +08:00
US9nUR RSS9n[U5S:agUGHn[[UR5n[RRS S
2025-04-29 18:09:00 +08:00
9RR!5n [#SU S-5V
s/sHo<>PM n n
2026-01-28 16:50:40 +08:00
[#SU S-5V s/sHn /PM n n UR$R'5R)S 5n[+U[,S9nUGH<>nU R/[UR055n/n[3UR4R'55H<>unnUS-[7US-5R9S S5UR:[3UR<R'55VVs/sH#unnUS-UR>UR@S .PM% snnS.nURCU5 M<> Sn[RRSS
9RR'5H:nURDH'nUUR:XdMUURFS-- nM) M< [IURJRL5nURNRPURJRRURJRPS./nURTR'5HBnURNRPURRURPS.nURCU5 MD URPUR[WU5[YURZS5UUR]U5UUR_5UR`RcSS5URdRcSS5S.
nU URCU5 GM<> SURP0n/n [3U 5Huunn![RRS S
9RR[7US-5S9n"U"RFn#U"Rfn$U#U!U$S.n%U RCU%5 Mw [+U SS9n U US'[R"5S- U- S- SUS3- n&URiUSS9 URkU&5 GM<> [oS#S#S$S"9$s sn
fs sn fs snnf![la [oS S S!S"9ss $f=f)%u'生成非第一轮的多个测试需求r*r:u回归测试需求.docxr;r<r=rDN<>testType<70>r.<00>design<67><00><03>index<65> operation<6F>expect)r<><00>rindex<65>subName<6D>subStepr<70><00>
2025-04-29 18:09:00 +08:00
testMethod<EFBFBD> )<03>dut_name<6D>design_chapter<65> design_name<6D>priority<74>
<EFBFBD>)
2026-01-28 16:50:40 +08:00
rar>r<>r<><00>doc_list<73>design_description<6F>test_demand_contentr<74><00>adequacy<63>testDesciptionrH<00>rArr<00>sortc<00> <00>US$<00>Nr<4E><00><00><01>xs r6<00><lambda><3E>6GenerateControllerHSM.create_hdemand.<locals>.<lambda>Z<00><00><00>Q<EFBFBD>v<EFBFBD>Y<EFBFBD><00>datar+rRu轮回归测试需求.docxTr<54>r,rVr-rWu$多轮回归测试需求生成完毕)8rrr1r r
rrXr\r]r!rhr>rr<><00>get<65>dictItem<65>count<6E>range<67>rtField<6C>all<6C>select_related<65>sortedr r<>r<><00> enumerate<74>
testQFieldr<EFBFBD><00>rjustr<74><00> testStepFieldr<64>r<>rir<><00>titlerr<><00> description<6F>dutra<00>chapter<65> otherDesignrrr<><00>get_final_list<73>stripr<70><00>replacer<65>r<>rjrkr2r)'r3r(r4rlrmrnrtrurw<00> test_type_len<65>i<>type_number_list<73>j<> list_list<73> testDemand_qs<71>sorted_demand_qs<71>demand<6E>
type_index<EFBFBD> content_listr<74><00>content<6E>step_obj<62> content_dict<63>testmethod_str<74> dict_item_qs<71>tm_item<65>parserr<72><00> relate_design<67>ddict<63>testdemand_dictrT<00> output_list<73>li<6C>qs<71> context_strr<72><00>tabler5s' r6<00>create_hdemand<6E>$GenerateControllerHSM.create_hdemands<><00><00>(<28><02>+<2B><18><17>8<EFBFBD>8<EFBFBD>:<3A><07>'<27>*:<3A>:<3A>=P<>P<>Sl<53>l<><08><1A>8<EFBFBD>$<24><03>'<27><07>B<EFBFBD>7<> <0B> +<2B> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B> <0E>{<7B> <1B>a<EFBFBD> <1F><17>!<21>F<EFBFBD>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD> <20>L<EFBFBD>L<EFBFBD>,<2C>,<2C>*<2A>,<2C>=<3D>F<>F<>L<>L<>N<>M<EFBFBD>+0<><11>M<EFBFBD>A<EFBFBD>4E<34>+F<>G<>+F<>a<EFBFBD><01>+F<> <1C>G<>%*<2A>1<EFBFBD>m<EFBFBD>a<EFBFBD>.?<3F>%@<40>A<>%@<40><01><12>%@<40>I<EFBFBD>A<>#<23>N<EFBFBD>N<EFBFBD>.<2E>.<2E>0<>?<3F>?<3F><08>I<>M<EFBFBD>%<25>m<EFBFBD>9Q<39>R<> <1C>*<2A><06>-<2D>3<>3<>C<EFBFBD><06><0F><0F>4H<34>I<>
2025-04-29 18:09:00 +08:00
<EFBFBD>!<21> <0C>(1<>&<26>2C<32>2C<32>2G<32>2G<32>2I<32>(J<>$<24>U<EFBFBD>G<EFBFBD>!&<26><11><19>"%<25>e<EFBFBD>a<EFBFBD>i<EFBFBD>.<2E>"6<>"6<>q<EFBFBD>#<23>"><3E>#*<2A>?<3F>?<3F>6?<3F>w<EFBFBD>?T<>?T<>?X<>?X<>?Z<>5[<5B>$<1A>5[<5B> 1<><15><08>',<2C>a<EFBFBD>i<EFBFBD>h<EFBFBD>>P<>>P<>\d<>\k<>\k<>l<>5[<5B>$<1A> $<16>L<EFBFBD>!<21>'<27>'<27> <0C>5<>)K<01>"$<24><0E>$(<28>L<EFBFBD>L<EFBFBD>$4<>$4<>,<2C>$4<>$G<>$P<>$P<>$T<>$T<>$V<>L<EFBFBD>#)<29>#4<>#4<><07>"<22>l<EFBFBD>&6<>&6<>6<>*<2A>l<EFBFBD>.@<40>.@<40>3<EFBFBD>.F<>F<>N<EFBFBD>$5<>%W<01>
2026-01-28 16:50:40 +08:00
$<24>F<EFBFBD>M<EFBFBD>M<EFBFBD>$=<3D>$=<3D>><3E><06>)/<2F><1A><1A><1F><1F>F<EFBFBD>M<EFBFBD>M<EFBFBD>La<4C>La<4C>,2<>M<EFBFBD>M<EFBFBD>,><3E>,><3E>@<01>A<01><08>%+<2B>%7<>%7<>%;<3B>%;<3B>%=<3D>M<EFBFBD>)6<>):<3A>):<3A>)?<3F>)?<3F>S`<60>Sh<53>Sh<53>,9<>,><3E>,><3E>@<01>E<EFBFBD><1C>O<EFBFBD>O<EFBFBD>E<EFBFBD>*<2A>&><3E> #<23>K<EFBFBD>K<EFBFBD>!<21>:<3A>:<3A>&<26>v<EFBFBD>.<2E> ,<2C>V<EFBFBD>_<EFBFBD>_<EFBFBD>j<EFBFBD> I<> (<28>*0<>*?<3F>*?<3F><03>*D<>+7<>"0<>"6<>"6<>"8<> &<26><0F><0F> 7<> 7<><04>d<EFBFBD> C<>&,<2C>&;<3B>&;<3B>&C<>&C<>D<EFBFBD>$<24>&O<> #<12><0F><1A>*<2A>%<25>,<2C>,<2C>_<EFBFBD>=<3D>U+<2B>Z<1F> <0B> 0<> 0<><0E>G<EFBFBD><1D>K<EFBFBD>(<28><19>3<> <0B><15><02><19>\<5C>\<5C>%<25>%<25>:<3A>%<25>6<>?<3F>?<3F>C<>C<><03>E<EFBFBD>TU<54>I<EFBFBD><0E>C<>W<><02> <20>h<EFBFBD>h<EFBFBD> <0B><19>w<EFBFBD>w<EFBFBD><04>'<27><1E> <20><12><05>
2025-04-29 18:09:00 +08:00
<1C>"<22>"<22>5<EFBFBD>)<29> 4<>!<21><1B>3F<33>H<>K<EFBFBD>)<29>G<EFBFBD>F<EFBFBD>O<EFBFBD><1C><08><08>
2026-01-28 16:50:40 +08:00
<EFBFBD>W<EFBFBD>,<2C>/?<3F>?<3F>BR<42>R<>WZ<57>[`<60>Za<5A>a{<7B>U|<7C>|<7C>I<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>w<EFBFBD>4<EFBFBD>J<EFBFBD> 0<> v<01><13><08><08><19>#<23>Y"<22>^<1C><13>S<EFBFBD>:`<60>a<>a<><61>W H<01><>A<><41> $<1A><>p#<23> v<01>#<23><13>S<EFBFBD>Bt<42>u<>u<> v<01>s$<00> T<06>5 T<06>!*T
<12>T<02>T*<05>)T*z/create/caseListDesczcreate-caseListDescc<00><><00>[U5n[R"5S- U- S- S- n[U5n[ [
US9nUR RSS9n[U5S:agUGH2n[RRS S
2025-04-29 18:09:00 +08:00
9RR5n[SUS-5V s/sHo<>PM n
n [SUS-5V s/sHn /PM n n [[!UR"5n UR$R'5nUH<>nU
R)[!UR*55n[-U5nUR./S .nUR0R'5H;nUR.[3UU5UR4S .nUS R7U5 M= U UR7U5 M<> 0n/n[9U 5Hhunn[RRS S
9RR[;US-5S9nUR<nUUS.nUR7U5 Mj [?USS9nUUS'[R"5S- U- S- SU S3- nURAUSS9 URCU5 GM5 [GSSSS9$s sn fs sn f![Da [GSSSS9ss $f=f)u#
2025-04-29 18:09:00 +08:00
生成非第一轮的用例说明
2026-01-28 16:50:40 +08:00
r*r:u回归测试用例概述.docxr;r<r=rDNr<4E>r<>)rarr)rar<><00>summaryrr)rrr<>c<00> <00>US$r<>r<>r<>s r6r<><00>;GenerateControllerHSM.create_caseListDesc.<locals>.<lambda><3E>r<>r<>r<>r+rRu 轮回归测试用例概述.docxTrSr,rVr-rWu*多轮回归测试用例概述生成完毕)$rrr1r r
rrXr\r]rr<>r<>r<>r<>r<>r!rhr>r<>r<>r<>r<>rra<00>tcFieldr<00> summarizerir<>r<>r<>r<>rjrkr2r)r3r(r4rlrmrnrtrur<>r<>r<>r<>r<>rw<00> testDemandsr<73>r<><00> demand_ident<6E> demand_dict<63>case<73> case_dictrTrr<>rr r<>r r5s r6<00>create_caseListDesc<73>)GenerateControllerHSM.create_caseListDescds<><00><00> (<28><02>+<2B><18><17>8<EFBFBD>8<EFBFBD>:<3A><07>'<27>*:<3A>:<3A>=P<>P<>Sr<53>r<><08><1A>8<EFBFBD>$<24><03>'<27><07>B<EFBFBD>7<> <0B> +<2B> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B> <0E>{<7B> <1B>a<EFBFBD> <1F><17>!<21>F<EFBFBD> <20>L<EFBFBD>L<EFBFBD>,<2C>,<2C>*<2A>,<2C>=<3D>F<>F<>L<>L<>N<>M<EFBFBD>+0<><11>M<EFBFBD>A<EFBFBD>4E<34>+F<>G<>+F<>a<EFBFBD><01>+F<> <1C>G<>%*<2A>1<EFBFBD>m<EFBFBD>a<EFBFBD>.?<3F>%@<40>A<>%@<40><01><12>%@<40>I<EFBFBD>A<>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD> <20>.<2E>.<2E>,<2C>,<2C>.<2E>K<EFBFBD>%<25><06>-<2D>3<>3<>C<EFBFBD><06><0F><0F>4H<34>I<>
2025-04-29 18:09:00 +08:00
<EFBFBD>(<28><16>0<> <0C>"<22>K<EFBFBD>K<EFBFBD><1E><12> <0B>#<23>N<EFBFBD>N<EFBFBD>.<2E>.<2E>0<>D<EFBFBD> $<24> <09> <09>!/<2F> <0C>d<EFBFBD>!C<>#'<27>><3E>><3E>!<16>I<EFBFBD>
 <20><06>'<27>.<2E>.<2E>y<EFBFBD>9<> 1<><1A>*<2A>%<25>,<2C>,<2C>[<5B>9<>&<26> <19>G<EFBFBD><1C>K<EFBFBD>(<28><19>3<> <0B><15><02><19>\<5C>\<5C>%<25>%<25>:<3A>%<25>6<>?<3F>?<3F>C<>C<><03>E<EFBFBD>TU<54>I<EFBFBD><0E>C<>W<><02><19>w<EFBFBD>w<EFBFBD><04><1E> <20><12><05><1C>"<22>"<22>5<EFBFBD>)<29> 4<>!<21><1B>3F<33>H<>K<EFBFBD>)<29>G<EFBFBD>F<EFBFBD>O<EFBFBD><1C><08><08>
<EFBFBD>W<EFBFBD>,<2C>/?<3F>?<3F>BR<42>R<>WZ<57>[`<60>Za<5A>bB<02>VC<02>C<02>I<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>w<EFBFBD>4<EFBFBD>J<EFBFBD> 8<> v<01><13><08><08><19>#<23>M"<22>R<1C><13>S<EFBFBD>:f<>g<>g<><67>M H<01><>A<><41>F#<23> v<01>#<23><13>S<EFBFBD>Bt<42>u<>u<> v<01>s<00>; J3<06> J8<06>J=<02>=K<05>Kz/create/caseListzcreate-caseListc <00><><00>[U5n[R"5S- U- S- S- n[U5n[ [
US9nUR RSS9n[U5S:agUGHWn[[UR5n[RRS S
2025-04-29 18:09:00 +08:00
9RR!5n [#SU S-5V
s/sHo<>PM n n
[#SU S-5V s/sHn /PM n n S n[%U5unnUR&R)5nUGH<>nU R+[UR,55n[/U5nUUR,R+UR5S-nS R1U[3UR+UR,5S-5[3U5/5nUR4UU/S .nUR6R)5H<>n/nSnUR8R)5HNnR<5nUR?USS9nUUUR@S.nURCU5 US- nMP UR4[EUU5URFURHURJURLUS.nUSRCU5 M<> U URCU5 GM<> 0n /n![OU 5Huunn"[RRS S
9RR[3US-5S9n#U#RPn$U#RRn%U$U"U%S.n&U!RCU&5 Mw [UU!SS9n!U!U S'UU S'[R"5S- U- S- SUS3- n'URWU SS9 URYU'5 GMZ []SSS S9$s sn
fs sn f![Za []SSSS9ss $f=f)!u#
2025-04-29 18:09:00 +08:00
生成非第一轮的测试用例
2026-01-28 16:50:40 +08:00
r*r:u测试用例.docxr;r<r=rDNr<4E>r<>z3.1<EFBFBD>.)rar<>r<>rr<00>F)<01>img_sizer<65>)rar<>r<00>initialization<6F>premise<73> design_person<6F>steprrr<>c<00> <00>US$r<>r<>r<>s r6r<><00>7GenerateControllerHSM.create_caseList.<locals>.<lambda><3E>r<>r<>r<><00> round_hanr+rRu轮测试用例.docxTrSr,rVr-rWu多轮测试用例生成完毕)/rrr1r r
rrXr\r]r!rhr>rr<>r<>r<>r<>r<>rr<>r<>r<>r<>rrbr<>rarr"rr<>r<>r<>rirrrr <00> designPersonr<6E>r<>r<>r<>rjrkr2r)(r3r(r4rlrmrnrtrurwr<>r<>r<>r<>r<><00> demand_prefix<69> testType_list<73>last_chapter_itemsrr<>r<>r<00>demand_last_chapter<65>demand_chapterrr<00> step_listr<74><00>one<6E> rich_parser<65> desc_list<73> step_dictrrTrrr r
r<>r r5s( r6<00>create_caseList<73>%GenerateControllerHSM.create_caseList<73>s<><00><00> (<28><02>+<2B><18><17>8<EFBFBD>8<EFBFBD>:<3A><07>'<27>*:<3A>:<3A>=P<>P<>Sf<53>f<><08><1A>8<EFBFBD>$<24><03>'<27><07>B<EFBFBD>7<> <0B> +<2B> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B> <0E>{<7B> <1B>a<EFBFBD> <1F><17>!<21>F<EFBFBD>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD> <20>L<EFBFBD>L<EFBFBD>,<2C>,<2C>*<2A>,<2C>=<3D>F<>F<>L<>L<>N<>M<EFBFBD>+0<><11>M<EFBFBD>A<EFBFBD>4E<34>+F<>G<>+F<>a<EFBFBD><01>+F<> <1C>G<>%*<2A>1<EFBFBD>m<EFBFBD>a<EFBFBD>.?<3F>%@<40>A<>%@<40><01><12>%@<40>I<EFBFBD>A<>!<21>M<EFBFBD>0G<30><06>0O<30> -<2D>M<EFBFBD>-<2D> <20>.<2E>.<2E>,<2C>,<2C>.<2E>K<EFBFBD>%<25><06>-<2D>3<>3<>C<EFBFBD><06><0F><0F>4H<34>I<>
2025-04-29 18:09:00 +08:00
<EFBFBD>(<28><16>0<> <0C>'9<><16><1F><1F>&I<>&O<>&O<>PV<50>PZ<50>PZ<50>&[<5B>^_<>&_<>#<23>!$<24><18><18>=<3D>#<23>m<EFBFBD>>Q<>>Q<>RX<52>Ra<52>Ra<52>>b<>ef<65>>f<>:g<>+.<2E>/B<>+C<>+E<01>"F<01><0E>#<23>K<EFBFBD>K<EFBFBD>)<29>-<2D><1E> <12> <0B>#<23>N<EFBFBD>N<EFBFBD>.<2E>.<2E>0<>D<EFBFBD> "<22>I<EFBFBD><1D>E<EFBFBD>#<23>y<EFBFBD>y<EFBFBD>}<7D>}<7D><EFBFBD><03>&0<><13><1D><1D>&?<3F> <0B>$/<2F>$><3E>$><3E>s<EFBFBD>R<EFBFBD>$><3E>$P<> <09>%*<2A>)2<>&)<29>j<EFBFBD>j<EFBFBD>%<1A> <09>
"<22>(<28>(<28><19>3<><1D><11>
<EFBFBD><05> /<2F>!%<25> <09> <09>!/<2F> <0C>d<EFBFBD>!C<>#'<27>><3E>><3E>*.<2E>*=<3D>*=<3D>#'<27><<3C><<3C>)-<2D>):<3A>):<3A> )<29>!<16>I<EFBFBD> <20><06>'<27>.<2E>.<2E>y<EFBFBD>9<>11<>4<1A>*<2A>%<25>,<2C>,<2C>[<5B>9<>S&<26>V<19>G<EFBFBD><1C>K<EFBFBD>(<28><19>3<> <0B><15><02><19>\<5C>\<5C>%<25>%<25>:<3A>%<25>6<>?<3F>?<3F>C<>C<><03>E<EFBFBD>TU<54>I<EFBFBD><0E>C<>W<><02> <20>h<EFBFBD>h<EFBFBD> <0B><19>w<EFBFBD>w<EFBFBD><04>'<27><1E> <20><12><05>
<1C>"<22>"<22>5<EFBFBD>)<29> 4<>!<21><1B>3F<33>H<>K<EFBFBD>)<29>G<EFBFBD>F<EFBFBD>O<EFBFBD>#(<28>G<EFBFBD>K<EFBFBD> <20><1C><08><08>
<EFBFBD>W<EFBFBD>,<2C>/?<3F>?<3F>BR<42>R<>WZ<57>[`<60>Za<5A>au<61>Uv<55>v<>I<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>w<EFBFBD>4<EFBFBD>J<EFBFBD> 8<> v<01><13><08><08><19>#<23>Q"<22>V<1C><13>S<EFBFBD>:Z<>[<5B>[<5B><>O H<01><>A<><41>H#<23> v<01>#<23><13>S<EFBFBD>Bt<42>u<>u<> v<01>s<00> O<06>5 O<06>7O"<02>"O<<05>;O<z /create/trackz create-trackc <00><> <00>[U5n[[US9nURR SS9nSn[ U5S:agUGH\n[ [UR5n/n[U5up<>URRSS9R5n U (d[S S S
2025-04-29 18:09:00 +08:00
US 3S 9s $U RR5n U GH<>n U RU R /S .n/nUR#U R$R'55 UR#U R(R'55 UGH:nUR*S;aUR-SSS.5 SR/S[1UR*S5UR2/5nU
UR*R5UR5S-nSR/U[7U R5UR*5S-5[7U5/5nURUU/S.nUR8R'5H0nUR[;UU5S.nUSR=U5 M2 USR=U5 GM= UR=U5 GM<> URRSS9R5nU(d[S S S
US3S 9s $URR'5nUGH<>n U RU R /S .n/nUR#U R$R'55 UR#U R(R'55 UGHnSR/S[1UR*S5UR2/5nU
UR*R5UR5S-nSR/U[7U R5UR*5S-5[7U5/5nURUU/S.nUR8R'5H0nUR[;UU5S.nUSR=U5 M2 USR=U5 GM UR=U5 GM<> SU0n[>R@"5S- U- S- S- S- n[>R@"5S- U- S- S- S- S
US 3- n[>R@"5S- U- S!- S- S
US"3- n[CU5nUREUS#S$9 URGU5 URI5(aC[KU5n[LRN"URPS%5 URGU5 GMR[S S S'S 9s $ [S(S(S)S 9$![Ra [S S S&S 9ss $f=f)*u#
2025-04-29 18:09:00 +08:00
生成非第一轮的用例追踪
2026-01-28 16:50:40 +08:00
r;r<r=z4.1rDNr?r@r,rRu轮次无源代码被测件r-)rar<><00> test_demand)<04>2<>3<>15<31>8<>/)rar<><00>_r<5F>r<>r)rar<>r<><00> case_list)rar<>r;r4uw轮次没有找到需求被测件,只有放在被测件为<需求>的设计需求、测试项、用例才会被追踪<E8BFBD> design_listr*<00> form_template<74>hsmu用例追踪.docx<63> temporaryu轮用例追踪_temp.docx<63>
output_diru轮用例追踪.docxTr<54>ru6请检查文件是否打开,如果打开则关闭...u9中间文档未找到,请检查你模版是否存在...rWu文档生成成功...)*rr
rrXr\r]r!rhr>rr[rYrZr<00>rsFieldrar<>r<><00>dtFieldr<64><00>odFieldr<64><00>updaterbrr<>r<>r<>rrrirr1r rjrk<00>is_filerr<00>merge_all_cell<6C>tablesr2)r3r(r4rnrtr'rurwr<r(r)rx<00>
so_designsr<EFBFBD><00> design_dict<63>
test_items<EFBFBD> test_item<65> reveal_ident<6E>test_item_last_chapter<65> test_chapter<65>test_item_dictrrr<><00>
xq_designsrT<00>
input_file<EFBFBD>temporary_file<6C> out_put_filerm<00>docus r6<00> create_track<63>"GenerateControllerHSM.create_track<63>s<><00><00> (<28><02>+<2B><18>'<27><07>B<EFBFBD>7<> <0B> +<2B> 2<> 2<> :<3A> :<3A>s<EFBFBD> :<3A> C<> <0B><1D> <0A> <0E>{<7B> <1B>a<EFBFBD> <1F> <12>!<21>F<EFBFBD>&<26>s<EFBFBD>6<EFBFBD>:<3A>:<3A><EFBFBD>7<>E<EFBFBD><1C>K<EFBFBD>0G<30><06>0O<30> -<2D>M<EFBFBD><1B>^<5E>^<5E>*<2A>*<2A><04>*<2A>5<>;<3B>;<3B>=<3D>F<EFBFBD><19>#<23><13>S<EFBFBD>C<EFBFBD><05>w<EFBFBD>Ni<4E>Bj<42>k<>k<><1F><1E><1E>.<2E>.<2E>0<>J<EFBFBD>$<24><06>'-<2D>{<7B>{<7B>v<EFBFBD>~<7E>~<7E>^`<60>a<> <0B><1F>
2025-04-29 18:09:00 +08:00
<EFBFBD><1A>!<21>!<21>&<26>.<2E>.<2E>"4<>"4<>"6<>7<><1A>!<21>!<21>&<26>.<2E>.<2E>"4<>"4<>"6<>7<>!+<2B>I<EFBFBD> <20>)<29>)<29>-B<>B<>#<23>*<2A>*<2A>C<EFBFBD>C<EFBFBD>+H<>I<>#&<26>8<EFBFBD>8<EFBFBD><1D>|<7C>I<EFBFBD>,><3E>,><3E>
<EFBFBD>K<>Y<EFBFBD>_<EFBFBD>_<EFBFBD>]<5D>$_<01>L<EFBFBD>.@<01> <09>@R<>@R<>-S<>-Y<>-Y<>Zc<5A>Zg<5A>Zg<5A>-h<>kl<6B>-l<>*<2A>#&<26>8<EFBFBD>8<EFBFBD>]<5D>C<EFBFBD> <0A>@S<>@S<>T]<5D>Tf<54>Tf<54>@g<>jk<6A>@k<><l<>-0<>1G<31>-H<>-J<01>$K<01>L<EFBFBD>.7<EFBFBD>n<EFBFBD>n<EFBFBD><1C>`l<>35<33>&7<>N<EFBFBD> )<29> 1<> 1<> 5<> 5<> 7<><04>$(<28>I<EFBFBD>I<EFBFBD>%3<>L<EFBFBD>$<24>%G<>%<1A> <09>'<27>{<7B>3<>:<3A>:<3A>9<EFBFBD>E<> !8<>  <20> <0A>.<2E>5<>5<>n<EFBFBD>E<>#",<2C>$<1C>"<22>"<22>;<3B>/<2F>/%<25>2<1C>^<5E>^<5E>*<2A>*<2A><04>*<2A>5<>;<3B>;<3B>=<3D>F<EFBFBD><19>#<23><13>S<EFBFBD>.1<EFBFBD>%<25><17>9p<02>-q<02>r<02>r<02><1F><1E><1E>+<2B>+<2B>-<2D>J<EFBFBD>$<24><06>'-<2D>{<7B>{<7B>v<EFBFBD>~<7E>~<7E>^`<60>a<> <0B><1F>
<EFBFBD><1A>!<21>!<21>&<26>.<2E>.<2E>"4<>"4<>"6<>7<><1A>!<21>!<21>&<26>.<2E>.<2E>"4<>"4<>"6<>7<>!+<2B>I<EFBFBD>#&<26>8<EFBFBD>8<EFBFBD><1D>|<7C>I<EFBFBD>,><3E>,><3E>
<EFBFBD>K<>Y<EFBFBD>_<EFBFBD>_<EFBFBD>]<5D>$_<01>L<EFBFBD>.@<01> <09>@R<>@R<>-S<>-Y<>-Y<>Zc<5A>Zg<5A>Zg<5A>-h<>kl<6B>-l<>*<2A>#&<26>8<EFBFBD>8<EFBFBD>]<5D>C<EFBFBD> <0A>@S<>@S<>T]<5D>Tf<54>Tf<54>@g<>jk<6A>@k<><l<>-0<>1G<31>-H<>-J<01>$K<01>L<EFBFBD>.7<EFBFBD>n<EFBFBD>n<EFBFBD><1C>`l<>35<33>&7<>N<EFBFBD> )<29> 1<> 1<> 5<> 5<> 7<><04>$(<28>I<EFBFBD>I<EFBFBD>%3<>L<EFBFBD>$<24>%G<>%<1A> <09>'<27>{<7B>3<>:<3A>:<3A>9<EFBFBD>E<> !8<>  <20> <0A>.<2E>5<>5<>n<EFBFBD>E<>",<2C> <1C>"<22>"<22>;<3B>/<2F>+%<25>.<1E>{<7B><0E>G<EFBFBD>
2026-01-28 16:50:40 +08:00
<1E><18><18><1A>g<EFBFBD>-<2D>0@<40>@<40>?<3F>R<>UZ<55>Z<>]p<>p<>J<EFBFBD>!<21>X<EFBFBD>X<EFBFBD>Z<EFBFBD>'<27>1<>4D<34>D<><EFBFBD>V<>Y^<5E>^<5E>al<61>l<>qt<71>uz<75>t{<7B>|U<02>pV<02>V<02>N<EFBFBD><1F>8<EFBFBD>8<EFBFBD>:<3A><07>/<2F>2B<32>B<>\<5C>Q<>TY<54>Y<>^a<>bg<62>ah<61>h|<7C>\}<7D>}<7D>L<EFBFBD><1E>z<EFBFBD>*<2A>C<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>w<EFBFBD>4<EFBFBD>J<EFBFBD> 0<> <0F>H<EFBFBD>H<EFBFBD>^<5E> $<24><1D>%<25>%<25>'<27>'<27>@<02>#<23>N<EFBFBD>3<>D<EFBFBD><18>'<27>'<27><04> <0B> <0B>A<EFBFBD><0E>7<><18>I<EFBFBD>I<EFBFBD>l<EFBFBD>+<2B>$<24><13>S<EFBFBD>B}<7D>~<7E>~<7E>i"<22>j<1C><13>S<EFBFBD>:Q<>R<>R<><52> '<27>@<02>'<27>S<EFBFBD><13>F~<7E><><>@<02>s<00>?V3<02>3W <05> W r<>N)<15>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__rr^rr<>rhr7r <00>atomicryr<>r<>r<>r rr1rU<00>__static_attributes__r<5F>r<>r6r$r$s<00><00> <1B>0<> 1<>F<EFBFBD> <0B>Y<EFBFBD>Y<EFBFBD>*<2A>5J<35>K<>x<01>c<EFBFBD>x<01>L<01>x<01> <0B>Y<EFBFBD>Y<EFBFBD>)<29>4M<34>N<><10><17><17>=n<01>#<23>=n<01><18>O<01>=n<01>~ <0B>Y<EFBFBD>Y<EFBFBD>#<23>.A<>B<><10><17><17>"b<01>C<EFBFBD>"b<01><18>C<01>"b<01>H <0B>Y<EFBFBD>Y<EFBFBD><1F>/<2F>:<3A><10><17><17>5h<01><03>5h<01><18>;<3B>5h<01>n <0B>Y<EFBFBD>Y<EFBFBD>#<23>.A<>B<><10><17><17>6b<01>C<EFBFBD>6b<01><18>C<01>6b<01>p <0B>Y<EFBFBD>Y<EFBFBD> <20>+;<3B><<3C><10><17><17>Zb<01><13>Zb<01><18>=<3D>Zb<01>x <0B>Y<EFBFBD>Y<EFBFBD>%<25>0E<30>F<><10><17><17>5h<01>c<EFBFBD>5h<01><18>G<01>5h<01>n <0B>Y<EFBFBD>Y<EFBFBD>!<21>,=<3D>><3E><10><17><17>W\<01>#<23>W\<01><18>?<3F>W\<01>r <0B>Y<EFBFBD>Y<EFBFBD><EFBFBD><1E>8<><10><17><17>`S<01>s<EFBFBD>`S<01><18>9<>`Sr<>r$N)7<>pathlibr<00>copyr<00>typingr<00> ninja_extrarrr<00> django.dbr <00>django.shortcutsr
<00>django.db.modelsr r <00>docxtplr <00>docxr<00>apps.project.modelsrrr<00>apps.dict.modelsr<00>
utils.utilrrrrr<00>utils.chapter_tools.csx_chapterr<00>utils.chen_responser<00>apps.createDocument.extensionsr<00>utils.path_utilsr<00>#apps.createDocument.extensions.utilr<00>.apps.createDocument.extensions.parse_rich_textr<00>+apps.createDocument.extensions.documentTimer<00>+apps.createSeiTaiDocument.extensions.loggerr<00>$apps.createDocument.extensions.toolsr r!<00>list<73>__annotations__r$r<>r<>r6<00><module>rts<><00><01><18><19><18>=<3D>=<3D>!<21>.<2E>(<28> <20><19>3<>3<>!<21>[<5B>[<5B>C<>,<2C>/<2F>)<29>@<40>E<>?<3F>F<>I<>a<><12>D<EFBFBD>a<><10><0E>&F<>%G<>H<>{S<01>N<EFBFBD>{S<01>I<01>{Sr<>