2017-09-20 8 views
4

this paperを探していました.HTMLUnitを使用して、 "新しい文字列を定義するために使用できるJavaScript関数の呼び出し回数を測定しますfromCharCode)、および文字列の使用(書き込み操作や評価呼び出しなど)の数です。新しい文字列を定義するJavaScript関数の数を測定する方法

私はHTMLUnitを初めて使いました。ウェブサイトが使用している機能をどのように見て、どの文字列が部分文字列、evalなどであるのかを調べることはできません。どのようにこれを正確に行うことができますか?

+0

こんにちは、見た目からは、jsandを開発するための出発点としてHTMLUnitが使用されています。 HtmlUnitには、MLに埋め込まれたメトリックを収集するためのハンドラを記述できるフック機能があります。 –

+0

特に、http://htmlunit.sourceforge.net/apidocs/がサポートするすべての* \ * Handlers *を見ることができます。あなたのテストをビルドするときにそこから行ってください –

+0

@Ahmed Masud私は混乱しています、サブリング呼び出しなどを検出するためにハンドラを使用するにはどうすればいいですか? –

答えて

1

最も簡単な方法は、すべてのネイティブコールをMonkeypatchすることです。たとえば、次のように

const original = String.fromCharCode; 
 
String.fromCharCode = function(...args) { 
 
    console.log('creating new string'); 
 
    return original.apply(this, args); 
 
} 
 
console.log(String.fromCharCode(65, 66, 67));

これはまだあなたが何が起こっているかを追跡できるようにしながら、あなたが元の機能を維持することができます。より複雑なものの、同じことがevalと他のネイティブコールに適用されます(意図的な口述なし)。
DOMの変更を監視する場合は、MutationObserversを使用できます。

+0

最も簡単なアプローチかもしれませんが、確かに最も簡単ではないかもしれませんし、カバレッジもありません。 –

+0

@AhmedMasudの解決策はありますか? –

+0

@Nit、私はここでhtmlunitをどのように使用するかについて、まだ混乱しています。申し訳ありませんが、私はまだAPIの新しいです。ありがとうございました。 –

関連する問題