QuickBuild integrates with Bitbucket server via the Bitbucket server repository. This repository has all features of a normal Git repository, but add the ability to build against open pull requests, and update pull request status based on build result.
To build against pull requests, define a Bitbucket server repository like below:
In repository definition, tick the build open pull requests option like below:
Upon triggering of configuration using such repository, QuickBuild will first find all open pull requests at Bitbucket server side and then fire separate build request(s) for each open pull request to check changes against that pull request, and build that pull request if necessary. So if there are many open pull requests, many build requests will be fired. So it is best practice to enable concurrent build to speed up verification of multiple pull requests.
As demonstrated below, each finished build will display associated pull request as branch information and changes of the build will be calculated against previous build with the same pull request branch.
Upon manual triggering of such configuration, all matched pull requests will be built even if they've not being updated, just like what QuickBuild behaves when trigger configurations using normal repositories. However if you schedule the configuration and set build condition to If changes found in referenced repositories (or something similar), QuickBuild will only build against new/updated pull requests.
QuickBuild will update pull request status automatically to reflect build status when build is started/finished, as demonstrated below: