The general algorithm (for finite dimensions) is using the Choi-Jamiolkowski-isomorphism.
Given a map $T:\mathcal{M}_d\to\mathcal{M}_d$ (matrices), then $T$ is completely positive iff
$$ \tau:=(T\otimes \mathrm{id}_d)(|\Omega\rangle\langle \Omega|)$$
is a positive semidefinite matrix, where $|\Omega\rangle=\sum_{i=1}^d |ii\rangle$ the maximally entangled state.
So what you do, you calculate the matrix $\tau$ corresponding to your map and then you check whether that matrix is positive, e.g. bei calculating the eigenvalues.
EDIT: About the isomorphism: There are physical interpretations - or attempts thereof. One that I know is that it tells you about gate teleportation: Losely speaking, you can not only teleport a quantum state, but also the effect of a channel, if you just apply the channel to one half of the entangled state and then use a modified version of the teleportation protocol. Since the teleportation protocol is deterministic ONLY when using a max. entangled state, this is, why you need it here.
On a more mathematical ground, the idea is the following. You need to see that
$$ (T\otimes \operatorname{id}_n)(\rho)\geq 0$$
(i.e. is positive) for all $n$. It is rather simple to see that it suffices to prove that for the $n$ which is the dimension of the input Hilbert space and it suffices to use the maximally entangled state.
To see this, there is a very handy trick: Let $|\psi\rangle$ be any pure state in $\mathcal{M}_d$. Then, given $|\Omega\rangle$ the max. ent. state, there exists a linear operator $R:\mathcal{M}_d\to\mathcal{M}_d$ such that
$$ (\operatorname{id}_d\otimes R)|\Omega\rangle=|\psi\rangle $$
This is just the fact that from any pure state, you can create any pure state by LOCC operations. But then, if $\rho=|\psi\rangle\langle \psi|$
$$ (T\otimes \operatorname{id}_d)(\rho)=(T\otimes \operatorname{id}_d)((\operatorname{id}_d\otimes R)|\Omega\rangle\langle\Omega|(\operatorname{id}_d\otimes R^{\dagger}))
=)=(\operatorname{id}_d\otimes R)(T\otimes \operatorname{id}_d)(|\Omega\rangle\langle\Omega|)(\operatorname{id}_d\otimes R^{\dagger})$$
but the latter is positive iff $(T\otimes \operatorname{id}_n)(|\Omega\rangle\langle\Omega|)$ is positive.
The mixed state case follows by linearity.