Files
aiagent/__pycache__/test_adb_tool.cpython-313.pyc

80 lines
8.7 KiB
Plaintext
Raw Normal View History

2026-03-06 22:31:41 +08:00
<EFBFBD>
<00>/si<00><00>V<00>SrSSKrSSKrSSKrSSKr\R
R S\R
R\R
R\ 5S55 SSK
J r Sr Sr SrSrS rS
r\S :Xa*\R&"\"55r\R*"\5 gg) uX
ADB工具验证脚本
用于直接测试 adb_log_tool 是否能正常调用 ADB 命令
<EFBFBD>N<>backend)<01> adb_log_toolc <00><00>X# <00>[S5 [S5 [S5 [SS9IShv<01>N n[R"U5n[S5 [S[R"USS S
935 g NH![
a!n[S [ U535 SnAgSnAff=f7f) u测试列出设备<E8AEBE><============================================================u-测试 1: 列出连接的设备 (adb devices)<29>devices<65><01>commandN<64>✅ 执行成功u结果:
F<EFBFBD>)<02> ensure_ascii<69>indentT<74>❌ 执行失败: )<07>printr<00>json<6F>loads<64>dumps<70> Exception<6F>str<74><03>result<6C> result_data<74>es <20>test_adb_tool.py<70>test_adb_devicesrs<><00><00><00> <09>(<28>O<EFBFBD> <09>
9<EFBFBD>:<3A> <09>(<28>O<EFBFBD><15>#<23>I<EFBFBD>6<>6<><06><1A>j<EFBFBD>j<EFBFBD><16>(<28> <0B> <0A> <20>"<22> <0A> <09>$<24>*<2A>*<2A>[<5B>u<EFBFBD>Q<EFBFBD>O<>P<>Q<>R<><13> 7<><37>
<15><15> <0A>"<22>3<EFBFBD>q<EFBFBD>6<EFBFBD>(<28>+<2B>,<2C><14><><15>s?<00>"B*<01> A<<00>A:<04>AA<<00>9B*<01>:A<<00><
B'<03>B"<03>B*<01>"B'<03>'B*c <00><00>$# <00>[S5 [S5 [S5 [SSS9IShv<01>N n[R"U5n[S5 S U;a[S
US 35 g[S UR S S 535 UR S5(a;[S5 [ USSSS5Hup#[SUSUSSS35 M gN<>![ a!n[S[U535 SnAgSnAff=f7f)u测试获取最近日志<E697A5>=
============================================================u2测试 2: 获取最近日志 (adb logcat -d -t 10)r<00>logcat<61>
)r <00> max_linesNr
<00>error<6F>⚠️ 返回错误: u日志行数: <20>
line_countr<00>logsu前3行日志预览:<3A><00><00> <20>. <20>d<00>...TrF<>rrrr<00>get<65> enumeraterr<00>rr<00>i<>logrs r<00>test_adb_logcat_recentr0!s<00><00><00> <09>/<2F><1A> <09>
><3E>?<3F> <09>(<28>O<EFBFBD><15>#<23><1C><18>
<EFBFBD>
<EFBFBD><06><1B>j<EFBFBD>j<EFBFBD><16>(<28> <0B> <0A> <20>"<22> <12>k<EFBFBD> !<21> <11>*<2A>;<3B>w<EFBFBD>+?<3F>*@<40>A<> B<><14> <12>N<EFBFBD>;<3B>?<3F>?<3F><<3C><11>#C<>"D<>E<> F<><1A><EFBFBD><EFBFBD>v<EFBFBD>&<26>&<26><15>,<2C>.<2E>'<27> <0B>F<EFBFBD>(;<3B>B<EFBFBD>Q<EFBFBD>(?<3F><11>C<>F<EFBFBD>A<EFBFBD><19>B<EFBFBD>q<EFBFBD>c<EFBFBD><12>C<EFBFBD><04><13>I<EFBFBD>;<3B>c<EFBFBD>2<>3<>D<01><13>
<EFBFBD><EFBFBD> <15><15> <0A>"<22>3<EFBFBD>q<EFBFBD>6<EFBFBD>(<28>+<2B>,<2C><14><><15>sK<00>"D<01> C"<00>C <04><C"<00>/D<01>0A/C"<00>D<01> C"<00>"
D <03>,D<03>D<01>D <03> Dc <00><00>&# <00>[S5 [S5 [S5 [SSSS9IShv<01>N n[R"U5n[S 5 S
U;a[S US
35 g[S UR S S535 UR S5(a;[S5 [ USSSS5Hup#[SUSUSSS35 M gN<>![ a!n[S[U535 SnAgSnAff=f7f)u测试带过滤的日志获取ru;测试 3: 获取错误级别日志 (adb logcat -d *:E -t 5)rr<00>E<>)r <00>levelrNr
r r!u错误日志行数: r"rr#u错误日志预览:r$r%r&r'r(r)TrFr*r-s r<00>test_adb_logcat_with_filterr5;s<00><00><00> <09>/<2F><1A> <09>
G<EFBFBD>H<> <09>(<28>O<EFBFBD><15>#<23><1C><15><17>
<EFBFBD>
<EFBFBD><06>
<1B>j<EFBFBD>j<EFBFBD><16>(<28> <0B> <0A> <20>"<22> <12>k<EFBFBD> !<21> <11>*<2A>;<3B>w<EFBFBD>+?<3F>*@<40>A<> B<><14> <12>(<28><1B><1F><1F><1C>q<EFBFBD>)I<>(J<>K<> L<><1A><EFBFBD><EFBFBD>v<EFBFBD>&<26>&<26><15>+<2B>-<2D>'<27> <0B>F<EFBFBD>(;<3B>B<EFBFBD>Q<EFBFBD>(?<3F><11>C<>F<EFBFBD>A<EFBFBD><19>B<EFBFBD>q<EFBFBD>c<EFBFBD><12>C<EFBFBD><04><13>I<EFBFBD>;<3B>c<EFBFBD>2<>3<>D<01><13>
<EFBFBD><EFBFBD> <15><15> <0A>"<22>3<EFBFBD>q<EFBFBD>6<EFBFBD>(<28>+<2B>,<2C><14><><15>sK<00>"D<01>C#<00>C!<04><C#<00>0D<01>1A/C#<00> D<01>!C#<00>#
D<03>-D <03>D<01> D<03>Dc<00><00><># <00>[S5 [S5 [S5 [SSS9IShv<01>N n[R"U5n[S5 S U;a[S
US 35 g[S UR S S 535 gN\![
a!n[S[ U535 SnAgSnAff=f7f)u测试执行shell命令ruH测试 4: 执行shell命令 (adb shell getprop ro.build.version.release)r<00>shellz getprop ro.build.version.release)r <00>
filter_tagNr
r r!u命令输出:
<EFBFBD>output<75>TrF)rrrrr+rrrs r<00>test_adb_shellr;Vs<><00><00><00> <09>/<2F><1A> <09>
T<EFBFBD>U<> <09>(<28>O<EFBFBD><15>#<23><1B>9<>
<EFBFBD>
<EFBFBD><06><1B>j<EFBFBD>j<EFBFBD><16>(<28> <0B> <0A> <20>"<22> <12>k<EFBFBD> !<21> <11>*<2A>;<3B>w<EFBFBD>+?<3F>*@<40>A<> B<><14> <12>O<EFBFBD>K<EFBFBD>O<EFBFBD>O<EFBFBD>H<EFBFBD>b<EFBFBD>$A<>#B<>C<> D<><13>
<EFBFBD><EFBFBD> <15><15> <0A>"<22>3<EFBFBD>q<EFBFBD>6<EFBFBD>(<28>+<2B>,<2C><14><><15>sJ<00>"B?<01> B<00>B<04><B<00>/B?<01>0B<00>B?<01>B<00>
B<<03>B7<03>2B?<01>7B<<03><B?c<00><00>D# <00>[S5 [S5 [S5 [SS9IShv<01>N n[R"U5nSU;a[SUS35 g [S
5 g N>![a!n[S [ U535 SnAg SnAff=f7f) u测试无效命令ru1测试 5: 测试无效命令 (验证错误处理)r<00>invalid_commandrNr u✅ 正确返回错误: Tu&⚠️ 应该返回错误但未返回Fr)rrrrrrrs r<00>test_invalid_commandr>ls<><00><00><00> <09>/<2F><1A> <09>
=<3D>><3E> <09>(<28>O<EFBFBD> <15>#<23>,=<3D>><3E>><3E><06><1A>j<EFBFBD>j<EFBFBD><16>(<28> <0B> <12>k<EFBFBD> !<21> <11>,<2C>[<5B><17>-A<>,B<>C<> D<><17> <11>:<3A> <<3C><18>?<3F><> <15><15> <0A>"<22>3<EFBFBD>q<EFBFBD>6<EFBFBD>(<28>+<2B>,<2C><14><><15>sJ<00>"B <01> A2<00>A0<04>1A2<00>#B <01>$ A2<00>/B <01>0A2<00>2
B<03><B<03>B <01>B<03>B c<00><00><># <00>[S5 [S5 [S5 [S5 [S5 [S5 [S5 [S5 [S5 /nURS [5IS
hv<01>N 45 URS [ 5IS
hv<01>N 45 URS [ 5IS
hv<01>N 45 URS [ 5IS
hv<01>N 45 URS[5IS
hv<01>N 45 [S5 [S5 [S5 [SU55n[U5nUH up4U(aSOSn[USU35 M" [SUSUS35 X:Xa [S5 g[SX!-
S35 [S5 [S5 [S5 gGNPGN0GNN<>N<>7f) u主测试函数u
🔧 ADB工具验证测试ru/此脚本将测试 adb_log_tool 的各种功能u
请确保:u) 1. 已安装 Android SDK Platform Toolsu 2. adb 命令在 PATH 中u/ 3. 已连接 Android 设备或启动模拟器u
按 Enter 键开始测试...u 列出设备Nu获取最近日志u获取错误日志u执行shell命令u 错误处理ru测试结果汇总c3<00><# <00>UHupU(dMSv<00> M g7f)r%N<>)<03>.0<EFBFBD>_rs r<00> <genexpr><3E>main.<locals>.<genexpr><3E>s<00><00><00>6<>G<EFBFBD>y<EFBFBD>q<EFBFBD>v<EFBFBD><11><11>G<EFBFBD>s<00> <01> u
✅ 通过u
❌ 失败z - u
总计: <20>/u 测试通过u3
🎉 所有测试通过ADB工具工作正常。ru
⚠️ 有 u 个测试失败,请检查:u 1. ADB 是否正确安装u8 2. 设备是否已连接 (运行 'adb devices' 检查)u% 3. 设备是否已启用 USB 调试r%)
r<00>input<75>appendrr0r5r;r><00>sum<75>len)<06>results<74>passed<65>total<61> test_namer<00>statuss r<00>mainrPs<><00><00><00> <09>
-<2D>.<2E> <09>(<28>O<EFBFBD> <09>
;<3B><<3C> <09>,<2C><17> <09>
5<EFBFBD>6<> <09>
'<27>(<28> <09>
;<3B><<3C> <09>(<28>O<EFBFBD>
<EFBFBD>
*<2A>+<2B><10>G<EFBFBD> <0C>N<EFBFBD>N<EFBFBD>N<EFBFBD>*:<3A>*<<3C>$<<3C>=<3D>><3E> <0B>N<EFBFBD>N<EFBFBD>(<28>0F<30>0H<30>*H<>I<>J<> <0B>N<EFBFBD>N<EFBFBD>(<28>0K<30>0M<30>*M<>N<>O<> <0B>N<EFBFBD>N<EFBFBD>'<27>~<7E>/?<3F>)?<3F>@<40>A<> <0B>N<EFBFBD>N<EFBFBD>N<EFBFBD>*><3E>*@<40>$@<40>A<>B<>
<EFBFBD>/<2F><1A> <09>
<1E><1F> <09>(<28>O<EFBFBD> <10>6<>G<EFBFBD>6<> 6<>F<EFBFBD> <0F><07>L<EFBFBD>E<EFBFBD>$<24><19> <09>!'<27><1C>\<5C><06> <0A><16><08><03>I<EFBFBD>;<3B>'<27>(<28>%<25>
<EFBFBD>J<EFBFBD>v<EFBFBD>h<EFBFBD>a<EFBFBD><05>w<EFBFBD>m<EFBFBD>
4<EFBFBD>5<> <0A><EFBFBD> <0A>D<>E<><10> <0A><0E>u<EFBFBD>~<7E>.<2E>.K<>L<>M<> <0A>+<2B>,<2C> <0A>H<>I<> <0A>5<>6<><10>7%=<3D>*H<>*M<>)?<3F>$@<40>s[<00>A?G<01>G
<EFBFBD>"G<01>$G
<EFBFBD>%"G<01>G
<EFBFBD>"G<01>*G
<EFBFBD>+"G<01> G
<EFBFBD>CG<01>G<01>G<01>G<01>G<01>__main__)<16>__doc__<5F>asyncior<00>sys<79>os<6F>path<74>insert<72>join<69>dirname<6D>__file__<5F>app.services.builtin_toolsrrr0r5r;r>rP<00>__name__<5F>run<75> exit_code<64>exitrA<00>r<00><module>ras<><00><01><04><0F> <0B>
<EFBFBD> <09><04><08><08><0F><0F><01>2<EFBFBD>7<EFBFBD>7<EFBFBD><<3C><<3C><02><07><07><0F><0F><08> 9<>9<EFBFBD>E<>F<>3<> <15> <15>4<15>6<15>,<15>&,<11>^ <0C>z<EFBFBD><19><17> <0B> <0B>D<EFBFBD>F<EFBFBD>#<23>I<EFBFBD><07>H<EFBFBD>H<EFBFBD>Y<EFBFBD><17>r`