java多行字符串在理性函数测试中表现奇怪

时间:2011-09-27 11:25:54

标签: java string rft ibm-rational

我只是想知道为什么会这样做。

与eclipse IDE集成的IBM RFT 6.x版本。 我运行以下行来从另一个程序获取文本输出。

String Text = "";
String Text_Value = "";

Text = (String) outputText().getProperty(".value");
Text_Value = (String) outputText().getProperty(".value");

outputText()。getProperty(“。value”)捕获的原始输出

2011-09-27 19:11:05.996 [Process ID:0x00000000] show cpup sc11
************************************************************
 CPU0  Usage                    : 3.2%
 CPU1  Usage                    : 6.29%
 Smooth CPU Usage               : 4.65%
 Real CPU Usage                 : 4.65%
------------------------------------------------------------
 CPU Usage Sample Rate          : 2(s)
 CPU OverLoad Level[1]          : 10%
 CPU OverLoad Level[2]          : 20%
 CPU OverLoad Level[3]          : 90%
 CPU OverLoad Level[4]          : 95%
 CPU Peak Usage                 : 99.88%
 CPU Peak Usage Time            : 2008-10-31 20:12:54
------------------------------------------------------------
 The History Real CPU Usage     :
 No   %CPU   %CPU   %CPU   %CPU   %CPU   %CPU   %CPU   %CPU
 0     3.87   4.76   4.72   4.76   4.76   4.69   4.65   4.65
 1     4.69   4.65
************************************************************

奇怪的事情发生在这里。 我得到了字符串变量

Text = "\r\n2011-09-27 19:11:05.996 [Process ID:0x00000000] show cpup sc11"

Text_Value = "\r\n2011-09-27 19:11:05.996 [Process ID:0x00000000] show cpup     sc11\r\n************************************************************\r\n.....4.69   4.65
          \r\n************************************************************"

Text_Value正是我想要的,但文本总是在“show cpup sc11”中被截断。

预计twoline会做同样的事情。

当我尝试其他程序输出时。这不会发生。两个变量是相同的。

1 个答案:

答案 0 :(得分:0)

这可能是同步问题。您的Text被切断了,因为控件没有完全填充。执行Text_Value行时,将完全填充outputText()对象,因此Text_Value不会被截断。您可以通过在sleep(10)行之前插入Text命令来证明这一点。将值10更改为任意长度足以使outputText()控件完全填充的任意秒数。