3

セレンを実行すると、次のようなメッセージが表示されることがあります。

警告-無効な長さ:Content-Length = 798242written = 8192

そして、Seleniumは応答を停止します。自動化されているWebサイトはASP.NETで実行され、IIS経由で提供されます。

エラーが原因でSeleniumが停止しないようにするにはどうすればよいですか?

4

2 に答える 2

1

URL は非常に長くすることができます。RFC で定義されているハード リミットがあります。これらの制限を超える URL になるコマンドを発行していると思われます。この症状を抑えるのではなく、Selenium スクリプトをデバッグして、問題の原因を突き止める必要があります。

于 2008-11-17T16:03:55.413 に答える
0

Selenium Server が訴えている問題は、要求されたページに 798242 バイトの Content-Length ヘッダーが含まれていたにもかかわらず、Selenium は 8192 バイトのデータしか受信しなかったことです。これは通常、Web ページの 1 つが ASP.NET ライフサイクルを使用する代わりに、Response ストリームに手動で書き込む場合に発生することがわかりました。

次のようなコードを探します。

Response.ClearContent();
string data = GetSomeData();
Response.Write(data);
Response.Flush();
Response.Close();

次のような Content-Length ヘッダーを追加する必要があります。

Response.AddHeader("Content-Length", data.Length.ToString());

したがって、コードは次のようになります。

Response.ClearContent();
string data = GetSomeData();
Response.AddHeader("Content-Length", data.Length.ToString());
Response.Write(data);
Response.Flush();
Response.Close();
于 2011-02-25T20:23:52.737 に答える