Practice Sites

Create A Simple Social Media Test Site

Create a local WordPress and BuddyPress social media site for practicing manual testing, database testing, and automation workflows.

Create A Simple Social Media Test Site thumbnail

In this tutorial, you will create a simple but functional social media site using WordPress, MAMP, MySQL, the BuddyX theme, and BuddyPress.

The goal is not to build a production social network. The goal is to build a realistic local test application where you can practice manual testing, backend/database inspection, and automation against real user workflows.

The finished site can support workflows such as:

  • creating user accounts
  • editing profiles
  • adding friends
  • posting text, images, and media
  • messaging friends
  • navigating user menus
  • testing permissions and logged-in/logged-out states

Why Build A Social Media Test Site

Social applications are good QA practice because they contain many common product patterns in one place:

  • registration and login
  • profile forms
  • activity feeds
  • media uploads
  • friend or member relationships
  • privacy and permission rules
  • admin configuration
  • database-backed state

Because this site runs locally, you can freely inspect the database, reset data, create test users, and intentionally break things without affecting a real production system.

Install MAMP

MAMP gives you a local Apache, MySQL, and PHP stack for running WordPress on your computer.

Go to mamp.info and download the free version of MAMP. Choose the installer for your operating system.

MAMP download page

After the download completes, open the installer and follow the installation steps.

MAMP installer

During installation, keep the default folder name and install location. On macOS, MAMP should stay in the Applications folder so the default paths work correctly.

MAMP installation options

Start MAMP

After installation, open MAMP and start the local servers. You should see indicators showing that Apache and MySQL are running.

MAMP running locally

The MAMP welcome page includes links to useful tools such as PHP info and phpMyAdmin.

MAMP control panel

By default, MAMP commonly uses:

ServiceDefault MAMP Port
Apache8888
MySQL8889

You can confirm or change these settings in MAMP preferences.

MAMP port settings

Create A MySQL Database

Open the MAMP welcome page in your browser and click the phpMyAdmin link.

In phpMyAdmin:

  1. Click Databases.
  2. Enter a database name for the test site.
  3. Choose a collation if needed.
  4. Click Create.

phpMyAdmin databases screen

After creating the database, it should appear in the database list on the left.

Created database in phpMyAdmin

You can also use MySQL Workbench instead of phpMyAdmin if you prefer a desktop database client.

MAMP MySQL settings

Download WordPress

Go to wordpress.org/download and download WordPress.

WordPress download page

After the download completes, unzip the WordPress folder.

Move WordPress Into MAMP htdocs

Copy the unzipped WordPress folder into MAMP's htdocs folder.

Common locations:

Operating SystemCommon MAMP Document Root
macOS/Applications/MAMP/htdocs
WindowsC:\MAMP\htdocs

WordPress folder in MAMP htdocs

The folder name becomes part of your local URL. For example, if the folder is named wordpress, the site may be available at:

http://localhost:8888/wordpress/

You can rename the folder to something easier to remember, such as social-test-site.

Install WordPress

Open the local WordPress URL in your browser and follow the installation flow.

When WordPress asks for database details, use the database you created in phpMyAdmin.

Typical MAMP values:

WordPress FieldValue
Database nameThe database name you created
Usernameroot
Passwordroot
Database hostlocalhost:8889 if plain localhost fails
Table prefixwp_

WordPress database configuration

Click Run the installation, then create your admin account.

After installation, you can log in from:

http://localhost:8888/your-folder-name/wp-admin/

Install The BuddyX Theme

BuddyX is a WordPress theme designed for BuddyPress community sites.

You can install it from the WordPress dashboard:

  1. Go to Appearance > Themes.
  2. Click Add New.
  3. Search for BuddyX.
  4. Click Install.
  5. Click Activate.

The older source page also showed downloading BuddyX from the theme provider and uploading it manually. The dashboard search method is simpler when the theme is available there.

BuddyX download page

If you have a downloaded theme ZIP, use:

  1. Appearance > Themes.
  2. Add New.
  3. Upload Theme.
  4. Choose the ZIP file.
  5. Click Install Now.
  6. Click Activate.

Upload BuddyX theme

Install The Community Plugins

After activating the theme, WordPress may show a message recommending related plugins. Install and activate the required plugins from that notice.

Theme required plugins

Useful plugins for this practice site include:

PluginPurpose
BuddyPressAdds members, profiles, activity, groups, and social features
Classic WidgetsKeeps older widget behavior available
ElementorPage builder support if you want to customize pages
Pie RegisterRegistration form control and optional email verification changes
Hide Admin Bar From Front EndHides the WordPress admin bar for frontend users
Kirki Customizer FrameworkTheme customization support
Login Logout MenuAdds login/logout menu items
rtMediaAdds media support for BuddyPress activity

Plugin installation list

Configure BuddyPress

Install BuddyPress from Plugins > Add New, then activate it.

After activation:

  1. Go to Settings > BuddyPress.
  2. Enable the components you want for testing.
  3. Save your settings.

For a richer test app, enable components such as extended profiles, account settings, friend connections, private messaging, activity streams, notifications, and user groups.

BuddyPress settings

BuddyPress will create or use pages for the social features. After this step, your WordPress site should start looking more like a community application.

BuddyX theme active

Add Social Pages To The Menu

Create a navigation menu for the site.

Go to Appearance > Menus, then add pages such as:

  • Activity
  • Members
  • Groups
  • Login
  • Logout
  • Register

For the home page, you can add a custom link that points to your local WordPress site URL.

WordPress menu settings

Then go to Settings > Reading and choose a static home page if you want the activity page or another community page to be the landing page.

Create a few test user accounts and add sample posts so the site has data to test against.

Enable Media Posts With rtMedia

Install and activate rtMedia for WordPress, BuddyPress and bbPress if you want users to post images and files in activity feeds.

rtMedia plugin settings

This gives you better test coverage for file upload, media display, validation, and permission scenarios.

Hide The Admin Bar For Frontend Users

Install and activate Hide Admin Bar From Front End.

Then go to its settings page and enable the option to hide the admin bar for guest or frontend users.

This makes the frontend experience closer to a real user-facing product and avoids test automation selectors accidentally depending on WordPress admin UI.

Configure Login And Registration

Install and activate Login Logout Menu so you can add login and logout items to the navigation.

Then go to Appearance > Menus, find the login/logout menu options, and add them to the menu.

Use Pie Register if you want more control over account registration and email verification.

For a local QA practice site, disabling email verification can be useful because it lets you create many accounts quickly without relying on email delivery.

Pie Register settings

Customize Widgets

To add sidebars:

  1. Click Customize.
  2. Go to Widgets.
  3. Choose the BuddyX left or right sidebar.
  4. Add the widgets you want.

BuddyX widget customization

You can use widgets to expose members, groups, recent activity, login forms, search, or other useful testing targets.

Customizer settings

Suggested Test Scenarios

After the site is running, use it as a QA practice application.

Manual testing ideas:

  • Register a new user.
  • Log in and log out.
  • Edit a user profile.
  • Upload a profile image.
  • Post a text activity update.
  • Post an image or media update.
  • Search for members.
  • Send a friend request.
  • Accept or reject a friend request.
  • Create a group.
  • Join and leave a group.
  • Verify menu behavior for logged-in and logged-out users.
  • Confirm private pages redirect anonymous users.

Automation ideas:

  • Create test users through the UI.
  • Log in with valid credentials.
  • Validate login failure messages.
  • Update a profile field and assert it persists.
  • Create an activity post and assert it appears in the feed.
  • Upload a small image file and assert it renders.
  • Send a friend request from one user to another.
  • Verify role-based access for admin and regular users.

Database testing ideas:

  • Confirm user records are created.
  • Inspect profile metadata after editing a profile.
  • Verify activity records after posting.
  • Check relationships created by friend or group workflows.
  • Reset tables between test runs.

Summary

You now have a local WordPress social media test site built with MAMP, MySQL, BuddyX, BuddyPress, and supporting plugins.

This is useful because it gives QA engineers a realistic local application with user accounts, forms, feeds, media, permissions, menus, and database state.

Create A Simple Social Media Test Site | SuperSQA