1

Apex テストコードで動的 SOQL クエリを実行していますが、LIMIT 句が機能していません。ただし、製品コードで使用すると機能するようです。

クエリは次のようになります。フォームからいくつかの用語を使用して、where 句を動的に作成します。

string query = 'SELECT name, billingstreet, billingpostalcode, phone ';
query += 'FROM Account WHERE ';
query += '(name LIKE \'%limited%\' OR name LIKE \'%LIMITED%\') ';
query += 'LIMIT 500';

List<Account> results = Database.query(query);

System.assert(results.size() <= 500);

テストでクエリが 500 をはるかに超えるレコードを返すように見えるため、これは失敗する可能性があります。ただし、視覚力ページでこれを使用する場合、クエリは機能します。

何かご意見は?

4

1 に答える 1

0

制限句を使用してテストメソッドで動的SOQLをテストしましたが、問題なく正常に機能しました。

返されるアカウントリストのサイズを確認するために、アサーションの前にsystem.debugを配置することをお勧めします。

このようにして、何が起こっているのかを知ることができるようになることを願っています。

于 2010-10-28T10:00:25.620 に答える