概要
このPythonスクリプトは、複数のユーザーアカウントをローテーションしてDiscourseでトピックを作成するプロセスを自動化します。すべてのユーザーが投稿した後、最初のユーザーに戻るため、大規模フォーラムでの分散投稿作成に最適です。このスクリプトは、各投稿を手動で入力することなく、投稿作成、API処理、負荷テストなどのフォーラム機能のテストに役立ちます。
リポジトリリンク
GitHubリポジトリ
インストールガイド
リポジトリをクローンし、環境変数を設定し、トピックを含むtopics.jsonファイルを作成してスクリプトを実行します。
このスクリプトを使用する理由
このスクリプトは、主にフォーラムで複数の投稿を作成することをシミュレートするために、テスト目的で設計されています。複数のユーザーアカウントからトピックを投稿するタスクを自動化します。これは、次のようなシナリオで役立ちます。
- API統合のテスト: DiscourseフォーラムAPIが複数の投稿リクエストとユーザーインタラクションを処理できることを確認します。
- 負荷テスト: 短期間で大量の投稿とユーザーインタラクションに対してフォーラムがどのように応答するかをテストします。
- 自動化: セットアップまたはテスト目的でいくつかの投稿を迅速に作成する必要がある場合、このスクリプトはプロセスを自動化し、時間を節約します。
使用時期
- フォーラム機能のテスト: Discourseフォーラムを開発またはカスタマイズしており、投稿作成フローが複数のユーザーでスムーズに機能することを確認する必要がある場合、このスクリプトはそれをテストするのに役立ちます。
- ユーザーインタラクションのシミュレーション: このスクリプトを使用して、モデレーション、コンテンツ表示、ユーザー通知機能などのテスト目的でさまざまなユーザーからの投稿をシミュレートします。
使用しない場合
フォーラムで実際のコンテンツを作成するためにこのスクリプトを使用することは推奨されません。単にフォーラムを埋めるためだけにダミー投稿を作成すると、フォーラムが過密になり、無関係になる可能性があります。常に本物のユーザー参加を奨励し、コミュニティを意味のある方法でエンゲージするために実際の投稿を作成することをお勧めします。このスクリプトは純粋にテストおよび開発目的であるため、通常のコンテンツ作成やフォーラムを人工的に埋める方法として使用しないでください。
機能
- ローテーションするユーザーアカウント: 投稿はすべてのユーザーに均等に分散され、公平な負荷分散を保証します。
- カスタマイズ可能なトピック: 各トピックのタイトル、本文、カテゴリ、画像、Markdownフォーマットを調整します。
- 非同期投稿: 同時リクエストでトピックを迅速かつ効率的に作成します。
このスクリプトは、Discourse Usersリポジトリとシームレスに連携して、Discourseフォーラムで複数のユーザーの作成を自動化できます。Discourse Usersスクリプトを使用してユーザーが作成されたら、このpostsスクリプトを使用して、各ユーザーアカウントから自動的に投稿を生成できます。この組み合わせにより、ユーザーアカウントとテスト投稿作成機能の両方を迅速にセットアップでき、フォーラムでのテスト、負荷シミュレーション、および自動コンテンツ生成に最適です。