Yes you can.
Here's how you do it.
To begin with you can add a method-selector as shown below to every test of yours.
<method-selectors>
<method-selector>
<script language="beanshell">
<![CDATA[
testName = testngMethod.getXmlTest().getName();
print ("testname = " + testName);
return testName.equals(System.getProperty("whichTestToRun"));
]]>
</script>
</method-selector>
</method-selectors>
Now you can run your suite using the VM arg -DwhichTestToRun=<yourTestNameGoesHere>
I havent been able to get it to work on the suite level, because apart from the method selector being completely ignored, I also see this error
org.testng.TestNGException:
Invalid Method Selector: found neither class name nor language
at org.testng.xml.XmlMethodSelector.toXml(XmlMethodSelector.java:111)
at org.testng.xml.XmlTest.toXml(XmlTest.java:487)
at org.testng.xml.XmlSuite.toXml(XmlSuite.java:516)
at org.testng.reporters.jq.TestNgXmlPanel.getContent(TestNgXmlPanel.java:28)
at org.testng.reporters.jq.BaseMultiSuitePanel.generate(BaseMultiSuitePanel.java:24)
at org.testng.reporters.jq.Main.generateReport(Main.java:63)
at org.testng.TestNG.generateReports(TestNG.java:1115)
at org.testng.TestNG.run(TestNG.java:1074)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)
I presume there's a bug somewhere which is causing this, but I havent dug in more on that aspect yet !